1
1
public/static/.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
!.gitignore
|
||||
0
public/static/addons/.keep
Normal file
30
public/static/addons/alisms/js/config.js
Normal file
@ -0,0 +1,30 @@
|
||||
define(["jquery", "admin", "vue"], function ($, admin, Vue) {
|
||||
|
||||
var Controller = {
|
||||
index: function () {
|
||||
|
||||
/**
|
||||
* 添加模板
|
||||
*/
|
||||
$('.add-template').on('click', function () {
|
||||
var dataKey = document.querySelectorAll("tr[data-key]"),
|
||||
key = 0;
|
||||
if (dataKey.length > 0) key = parseInt($(dataKey[dataKey.length - 1]).attr('data-key')) + 1;
|
||||
var html = ' <tr data-key="' + key + '">\n' +
|
||||
' <td><input type="text" name="name[' + key + ']" lay-verify="required" autocomplete="off" class="layui-input" value=""></td>\n' +
|
||||
' <td><input type="text" name="value[' + key + ']" lay-verify="required" autocomplete="off" class="layui-input" value=""></td>\n' +
|
||||
' <td><input type="text" name="remark[' + key + ']" lay-verify="required" autocomplete="off" class="layui-input" value=""></td>\n' +
|
||||
' <td><span class="layui-btn layui-btn-danger layui-btn-sm" delete-template="">删除</span></td>\n' +
|
||||
' </tr>';
|
||||
$('.template-list').append(html);
|
||||
});
|
||||
|
||||
$('body').on('click', '[delete-template]', function () {
|
||||
$(this).parent().parent().remove();
|
||||
});
|
||||
|
||||
admin.listen();
|
||||
}
|
||||
};
|
||||
return Controller;
|
||||
});
|
||||
37
public/static/addons/alisms/js/record.js
Normal file
@ -0,0 +1,37 @@
|
||||
define(["jquery", "admin",], function ($, admin) {
|
||||
|
||||
var init = {
|
||||
table_elem: 'currentTable',
|
||||
table_render_id: 'currentTableRenderId',
|
||||
index_url: '/addons/alisms/record/index',
|
||||
delete_url: '/addons/alisms/record/del',
|
||||
};
|
||||
|
||||
var Controller = {
|
||||
|
||||
index: function () {
|
||||
admin.table.render({
|
||||
elem: '#' + init.table_elem,
|
||||
id: init.table_render_id,
|
||||
url: init.index_url,
|
||||
init: init,
|
||||
toolbar: ['refresh', 'delete'],
|
||||
cols: [[
|
||||
{type: "checkbox"},
|
||||
{field: 'id', width: 80, title: 'ID', sort: true, align: "center"},
|
||||
{field: 'phone', minWidth: 80, title: '发送手机', align: "center"},
|
||||
{field: 'content', minWidth: 80, title: '短信内容', align: "center"},
|
||||
{field: 'template', minWidth: 80, title: '短信模板', align: "center"},
|
||||
{field: 'result', minWidth: 80, title: '返回结果', align: "center"},
|
||||
{field: 'create_time', minWidth: 80, title: '发送时间', align: "center", search: 'range'},
|
||||
{
|
||||
width: 250, align: 'center', title: '操作', init: init, templet: admin.table.tool, operat: ['delete']
|
||||
}
|
||||
]],
|
||||
});
|
||||
|
||||
admin.listen();
|
||||
}
|
||||
};
|
||||
return Controller;
|
||||
});
|
||||
59
public/static/admin/css/color.css
Normal file
@ -0,0 +1,59 @@
|
||||
.green {
|
||||
color: #11c26d !important;
|
||||
}
|
||||
|
||||
.red {
|
||||
color: #ff4c52 !important;
|
||||
}
|
||||
|
||||
.cyan {
|
||||
color: #0bb2d4 !important;
|
||||
}
|
||||
|
||||
.purple {
|
||||
color: #9463f7 !important;
|
||||
}
|
||||
|
||||
.blue {
|
||||
color: #3e8ef7 !important;
|
||||
}
|
||||
|
||||
.orange {
|
||||
color: #eb6709 !important;
|
||||
}
|
||||
|
||||
.indigo {
|
||||
color: #6610f2 !important;
|
||||
}
|
||||
|
||||
.pink {
|
||||
color: #e83e8c !important;
|
||||
}
|
||||
|
||||
.teal {
|
||||
color: #20c997 !important;
|
||||
}
|
||||
|
||||
.white {
|
||||
color: #fff !important;
|
||||
}
|
||||
|
||||
.gray {
|
||||
color: #6c757d !important;
|
||||
}
|
||||
|
||||
.gray-dark {
|
||||
color: #343a40 !important;
|
||||
}
|
||||
|
||||
.secondary {
|
||||
color: #6c757d !important;
|
||||
}
|
||||
|
||||
.yellow {
|
||||
color: rgb(255, 214, 102) !important;
|
||||
}
|
||||
|
||||
.magenta {
|
||||
color: #eb2f96 !important;
|
||||
}
|
||||
25
public/static/admin/css/iconfont.css
Normal file
@ -0,0 +1,25 @@
|
||||
|
||||
@font-face {font-family: "iconfont";
|
||||
src: url('../fonts/iconfont/iconfont.eot?t=1487643189178'); /* IE9*/
|
||||
src: url('../fonts/iconfont/iconfont.eot?t=1487643189178#iefix') format('embedded-opentype'), /* IE6-IE8 */
|
||||
url('../fonts/iconfont/iconfont.woff?t=1487643189178') format('woff'), /* chrome, firefox */
|
||||
url('../fonts/iconfont/iconfont.ttf?t=1487643189178') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+*/
|
||||
url('../fonts/iconfont/iconfont.svg?t=1487643189178#iconfont') format('svg'); /* iOS 4.1- */
|
||||
}
|
||||
|
||||
.iconfont {
|
||||
font-family:"iconfont" !important;
|
||||
font-size:16px;
|
||||
font-style:normal;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
-moz-osx-font-smoothing: grayscale;
|
||||
}
|
||||
|
||||
.icon-max:before { content: "\e623"; }
|
||||
|
||||
.icon-restore:before { content: "\e624"; }
|
||||
|
||||
.icon-min:before { content: "\e625"; }
|
||||
|
||||
.icon-close:before { content: "\e626"; }
|
||||
|
||||
692
public/static/admin/css/layui-theme-dark.css
Normal file
@ -0,0 +1,692 @@
|
||||
:root{
|
||||
/* =====色板===== */
|
||||
/*常量,不随明暗主题变化*/
|
||||
--color-white: #FFFFFF;
|
||||
--color-black: #000000;
|
||||
|
||||
--lay-color-white: #FAFAFA;
|
||||
--lay-color-black: #333333;
|
||||
|
||||
--lay-color-red-1: #FFF1E8;
|
||||
--lay-color-red-2: #FFD7C0;
|
||||
--lay-color-red-3: #FFBB99;
|
||||
--lay-color-red-4: #FF9C71;
|
||||
--lay-color-red-5: #FF7A4A;
|
||||
--lay-color-red-6: #FF5722;
|
||||
--lay-color-red-7: #D23B15;
|
||||
--lay-color-red-8: #A6250B;
|
||||
--lay-color-red-9: #791404;
|
||||
--lay-color-red-10: #4D0800;
|
||||
|
||||
--lay-color-blue-1: #E8F9FF;
|
||||
--lay-color-blue-2: #C0ECFF;
|
||||
--lay-color-blue-3: #97DCFF;
|
||||
--lay-color-blue-4: #6FCAFF;
|
||||
--lay-color-blue-5: #46B5FF;
|
||||
--lay-color-blue-6: #1E9FFF;
|
||||
--lay-color-blue-7: #1379D2;
|
||||
--lay-color-blue-8: #0A58A6;
|
||||
--lay-color-blue-9: #043A79;
|
||||
--lay-color-blue-10: #00214D;
|
||||
|
||||
--lay-color-lightblue-1: #E8FDFF;
|
||||
--lay-color-lightblue-2: #C1F4FB;
|
||||
--lay-color-lightblue-3: #9CEAF7;
|
||||
--lay-color-lightblue-4: #77DDF4;
|
||||
--lay-color-lightblue-5: #53CEF0;
|
||||
--lay-color-lightblue-6: #31BDEC;
|
||||
--lay-color-lightblue-7: #1F95C4;
|
||||
--lay-color-lightblue-8: #10709C;
|
||||
--lay-color-lightblue-9: #064E74;
|
||||
--lay-color-lightblue-10: #002F4D;
|
||||
|
||||
--lay-color-layuigreen-1: #E8FFF9;
|
||||
--lay-color-layuigreen-2: #B5F1E3;
|
||||
--lay-color-layuigreen-3: #87E3D1;
|
||||
--lay-color-layuigreen-4: #5DD6C1;
|
||||
--lay-color-layuigreen-5: #37C8B5;
|
||||
--lay-color-layuigreen-6: #16BAAA;
|
||||
--lay-color-layuigreen-7: #0E9F95;
|
||||
--lay-color-layuigreen-8: #08837F;
|
||||
--lay-color-layuigreen-9: #036868;
|
||||
--lay-color-layuigreen-10: #004A4D;
|
||||
|
||||
--lay-color-green-1: #E8FFF2;
|
||||
--lay-color-green-2: #B5F1D1;
|
||||
--lay-color-green-3: #86E2B4;
|
||||
--lay-color-green-4: #5CD49C;
|
||||
--lay-color-green-5: #37C588;
|
||||
--lay-color-green-6: #16B777;
|
||||
--lay-color-green-7: #0E9C68;
|
||||
--lay-color-green-8: #088259;
|
||||
--lay-color-green-9: #036749;
|
||||
--lay-color-green-10: #004D38;
|
||||
|
||||
--lay-color-orange-1: #FFFCE8;
|
||||
--lay-color-orange-2: #FFF5BA;
|
||||
--lay-color-orange-3: #FFEA8B;
|
||||
--lay-color-orange-4: #FFDC5D;
|
||||
--lay-color-orange-5: #FFCB2E;
|
||||
--lay-color-orange-6: #FFB800;
|
||||
--lay-color-orange-7: #D29000;
|
||||
--lay-color-orange-8: #A66C00;
|
||||
--lay-color-orange-9: #794B00;
|
||||
--lay-color-orange-10: #4D2D00;
|
||||
|
||||
--lay-color-cyan-1: #E8F6FF;
|
||||
--lay-color-cyan-2: #B9CEDD;
|
||||
--lay-color-cyan-3: #8FA7BB;
|
||||
--lay-color-cyan-4: #6A829A;
|
||||
--lay-color-cyan-5: #4A5F78;
|
||||
--lay-color-cyan-6: #2F4056;
|
||||
--lay-color-cyan-7: #223654;
|
||||
--lay-color-cyan-8: #162C51;
|
||||
--lay-color-cyan-9: #0B214F;
|
||||
--lay-color-cyan-10: #00174D;
|
||||
|
||||
--lay-color-purple-1: #FDE8FF;
|
||||
--lay-color-purple-2: #EDBEF4;
|
||||
--lay-color-purple-3: #DC97E8;
|
||||
--lay-color-purple-4: #C972DD;
|
||||
--lay-color-purple-5: #B651D1;
|
||||
--lay-color-purple-6: #A233C6;
|
||||
--lay-color-purple-7: #8120A8;
|
||||
--lay-color-purple-8: #631289;
|
||||
--lay-color-purple-9: #48076B;
|
||||
--lay-color-purple-10: #2F004D;
|
||||
|
||||
--lay-color-black-1: #E8F8FF;
|
||||
--lay-color-black-2: #BFD0D8;
|
||||
--lay-color-black-3: #98A8B1;
|
||||
--lay-color-black-4: #73818A;
|
||||
--lay-color-black-5: #505B63;
|
||||
--lay-color-black-6: #2F363C;
|
||||
--lay-color-black-7: #23303C;
|
||||
--lay-color-black-8: #18293C;
|
||||
--lay-color-black-9: #0C213C;
|
||||
--lay-color-black-10: #00183C;
|
||||
|
||||
--lay-color-gray-1: #FAFAFA;
|
||||
--lay-color-gray-2: #F6F6F6;
|
||||
--lay-color-gray-3: #EEEEEE;
|
||||
--lay-color-gray-4: #E2E2E2;
|
||||
--lay-color-gray-5: #DDDDDD;
|
||||
--lay-color-gray-6: #D2D2D2;
|
||||
--lay-color-gray-7: #CCCCCC;
|
||||
--lay-color-gray-8: #C2C2C2;
|
||||
--lay-color-gray-9: #AAAAAA;
|
||||
--lay-color-gray-10: #939393;
|
||||
|
||||
--lay-color-gray-11: #858585;
|
||||
--lay-color-gray-12: #7b7b7b;
|
||||
--lay-color-gray-13: #686868;
|
||||
|
||||
/* =====语义===== */
|
||||
/* 主色 */
|
||||
--lay-color-primary: var(--lay-color-layuigreen-6);
|
||||
--lay-color-primary-hover: var(--lay-color-layuigreen-5);
|
||||
--lay-color-primary-active: var(--lay-color-layuigreen-7);
|
||||
--lay-color-primary-disabled: var(--lay-color-layuigreen-3);
|
||||
--lay-color-primary-light: var(--lay-color-layuigreen-4);
|
||||
|
||||
/* 次色 */
|
||||
--lay-color-secondary: var(--lay-color-green-6);
|
||||
--lay-color-secondary-hover: var(--lay-color-green-5);
|
||||
--lay-color-secondary-active: var(--lay-color-green-7);
|
||||
--lay-color-secondary-disabled: var(--lay-color-green-3);
|
||||
--lay-color-secondary-light: var(--lay-color-green-4);
|
||||
|
||||
/* 引导 */
|
||||
--lay-color-info: var(--lay-color-lightblue-6);
|
||||
--lay-color-info-hover: var(--lay-color-lightblue-5);
|
||||
--lay-color-info-active: var(--lay-color-lightblue-7);
|
||||
--lay-color-info-disabled: var(--lay-color-lightblue-3);
|
||||
--lay-color-info-light: var(--lay-color-lightblue-4);
|
||||
|
||||
/* 百搭 */
|
||||
--lay-color-normal: var(--lay-color-blue-6);
|
||||
--lay-color-normal-hover: var(--lay-color-blue-5);
|
||||
--lay-color-normal-active: var(--lay-color-blue-7);
|
||||
--lay-color-normal-disabled: var(--lay-color-blue-3);
|
||||
--lay-color-normal-light: var(--lay-color-blue-4);
|
||||
|
||||
/* 警示 */
|
||||
--lay-color-warning: var(--lay-color-orange-6);
|
||||
--lay-color-warning-hover: var(--lay-color-orange-5);
|
||||
--lay-color-warning-active: var(--lay-color-orange-7);
|
||||
--lay-color-warning-disabled: var(--lay-color-orange-3);
|
||||
--lay-color-warning-light: var(--lay-color-orange-4);
|
||||
|
||||
/* 成功 */
|
||||
--lay-color-success: var(--lay-color-green-6);
|
||||
--lay-color-success-hover: var(--lay-color-green-5);
|
||||
--lay-color-success-active: var(--lay-color-green-7);
|
||||
--lay-color-success-disabled: var(--lay-color-green-3);
|
||||
--lay-color-success-light: var(--lay-color-green-4);
|
||||
|
||||
/* 错误 */
|
||||
--lay-color-danger: var(--lay-color-red-6);
|
||||
--lay-color-danger-hover: var(--lay-color-red-5);
|
||||
--lay-color-danger-active: var(--lay-color-red-7);
|
||||
--lay-color-danger-disabled: var(--lay-color-red-3);
|
||||
--lay-color-danger-light: var(--lay-color-red-4);
|
||||
|
||||
--lay-color-bg-1: #17171A; /*整体背景*/
|
||||
--lay-color-bg-2: #232324; /*一级容器背景,卡片,面板*/
|
||||
--lay-color-bg-3: #2a2a2b; /*二级容器背景*/
|
||||
--lay-color-bg-4: #313132; /*三级容器背景*/
|
||||
--lay-color-bg-5: #373739; /*下拉弹出框、Tooltip 背景颜色*/
|
||||
--lay-color-bg-white: #f6f6f6; /*白色背景*/
|
||||
|
||||
--lay-color-text-1: rgba(255,255,255,.9); /*强调/正文标题*/
|
||||
--lay-color-text-2: rgba(255,255,255,.7); /*次强调/语句*/
|
||||
--lay-color-text-3: rgba(255,255,255,.5); /*次要信息*/
|
||||
--lay-color-text-4: rgba(255,255,255,.3);/*禁用状态文字 */
|
||||
|
||||
--lay-color-border-1: #2e2e30;
|
||||
--lay-color-border-2: #484849;
|
||||
--lay-color-border-3: #5f5f60;
|
||||
--lay-color-border-4: #929293;
|
||||
|
||||
--lay-color-fill-1: rgba(255,255,255,.04);/*浅/禁用*/
|
||||
--lay-color-fill-2: rgba(255,255,255,.08);/*常规/白底悬浮*/
|
||||
--lay-color-fill-3: rgba(255,255,255,.12); /*深/灰底悬浮*/
|
||||
--lay-color-fill-4: rgba(255,255,255,.16);/*重/特殊场景*/
|
||||
|
||||
--lay-color-hover: var(--lay-color-fill-3); /*bg*/
|
||||
--lay-color-active: var(--lay-color-fill-3); /*bg*/
|
||||
}
|
||||
blockquote,body,button,dd,div,dl,dt,form,h1,h2,h3,h4,h5,h6,input,li,ol,p,pre,td,textarea,th,ul{-webkit-tap-highlight-color: rgba(0, 0, 0, 0)} /*danger: 勿改*/
|
||||
body{color:var(--lay-color-text-2);background-color: var(--lay-color-bg-1); color-scheme: dark;}
|
||||
hr{border-bottom:1px solid var(--lay-color-border-2)!important}
|
||||
a{color:var(--lay-color-text-1);}
|
||||
a:hover{color:var(--lay-color-text-3)}
|
||||
/* 三角形 */
|
||||
.layui-edge{border-color:transparent}
|
||||
.layui-edge-top{border-bottom-color:var(--lay-color-border-4)}
|
||||
.layui-edge-right{border-left-color:var(--lay-color-border-4)}
|
||||
.layui-edge-bottom{border-top-color:var(--lay-color-border-4)}
|
||||
.layui-edge-left{border-right-color:var(--lay-color-border-4)}
|
||||
/* 禁用文字 */
|
||||
.layui-disabled,.layui-disabled:hover{color:var(--lay-color-text-4)!important}
|
||||
/* 图标 */
|
||||
.layui-icon{-moz-osx-font-smoothing:grayscale}
|
||||
/* admin 布局 */
|
||||
.layui-layout-admin .layui-header{background-color:var(--lay-color-bg-2)}
|
||||
.layui-layout-admin .layui-footer{box-shadow:-1px 0 4px rgb(0 0 0 / 12%);background-color:var(--lay-color-bg-2)}
|
||||
.layui-layout-admin .layui-logo{color:var(--lay-color-primary);box-shadow:0 1px 2px 0 rgb(0 0 0 / 15%)}
|
||||
/* 引用 */
|
||||
.layui-elem-quote{border-left:5px solid var(--lay-color-secondary);background-color:var(--lay-color-bg-2)}
|
||||
/* 进度条 */
|
||||
.layui-progress{background-color: var(--lay-color-bg-3)}
|
||||
.layui-progress-bar{background-color:var( --lay-color-secondary)}
|
||||
.layui-progress-text{color:var(--lay-color-text-2)}
|
||||
.layui-progress-big .layui-progress-text{color: var(--lay-color-text-1)}
|
||||
/* 折叠面板 */
|
||||
.layui-colla-title{color: var(--lay-color-text-1);background-color: var(--lay-color-bg-2)}
|
||||
.layui-colla-content{color:var(--lay-color-text-2)}
|
||||
/* 卡片面板 */
|
||||
.layui-card{background-color: var(--lay-color-bg-2);box-shadow:0 1px 2px 0 rgba(0,0,0,.05)}
|
||||
.layui-card-header{border-bottom:1px solid var(--lay-color-border-2);color:var(--lay-color-text-1)}
|
||||
/* 常规面板 */
|
||||
.layui-panel{box-shadow:1px 1px 4px rgb(0 0 0 / 8%);background-color: var( --lay-color-bg-2);color: var(--lay-color-text-1)}
|
||||
/* 窗口面板 */
|
||||
.layui-panel-window{border-top:5px solid var(--lay-color-border-2);background-color: var(--lay-color-bg-2)}
|
||||
/* 背景颜色 */
|
||||
.layui-bg-red{background-color:var(--lay-color-red-6)!important;color: var(--lay-color-white)!important}
|
||||
.layui-bg-orange{background-color:var(--lay-color-orange-6)!important;color: var(--lay-color-white)!important}
|
||||
.layui-bg-green{background-color:var(--lay-color-layuigreen-6)!important;color: var(--lay-color-white)!important}
|
||||
.layui-bg-cyan{background-color:var(--lay-color-cyan-6)!important;color: var(--lay-color-white)!important}
|
||||
.layui-bg-blue{background-color: var(--lay-color-blue-6)!important;color: var(--lay-color-white)!important}
|
||||
.layui-bg-black{background-color:var(--lay-color-black-6)!important;color: var(--lay-color-white)!important}
|
||||
.layui-bg-purple{background-color: var(--lay-color-purple-6)!important; color: var(--lay-color-white)!important;}
|
||||
.layui-bg-gray{background-color:var(--lay-color-gray-1)!important;color: var(--lay-color-black-6)!important}
|
||||
/* 徽章 */
|
||||
.layui-badge-rim,.layui-border,.layui-colla-content,.layui-colla-item,.layui-collapse,.layui-elem-field,.layui-form-pane .layui-form-item[pane],.layui-form-pane .layui-form-label,.layui-input,.layui-input-split,.layui-panel,.layui-quote-nm,.layui-select,.layui-tab-bar,.layui-tab-card,.layui-tab-title,.layui-tab-title .layui-this:after,.layui-textarea{border-color: var(--lay-color-border-1)}
|
||||
/* 边框颜色 */
|
||||
.layui-border{color:var(--lay-color-text-1)!important}
|
||||
.layui-border-red{border-color:var(--lay-color-red-6)!important;color:var(--lay-color-red-6)!important}
|
||||
.layui-border-orange{border-color:var(--lay-color-orange-6)!important;color:var(--lay-color-orange-6)!important}
|
||||
.layui-border-green{border-color:var(--lay-color-layuigreen-6)!important;color:var(--lay-color-layuigreen-6)!important}
|
||||
.layui-border-cyan{border-color:var(--lay-color-cyan-6)!important;color:var(--lay-color-cyan-6)!important}
|
||||
.layui-border-blue{border-color: var(--lay-color-blue-6)!important;color: var(--lay-color-blue-6)!important}
|
||||
.layui-border-purple{border-color: var(--lay-color-purple-6)!important; color: var(--lay-color-purple-6)!important;}
|
||||
.layui-border-black{border-color:var(--lay-color-black-6)!important;color:var(--lay-color-text-1)!important}
|
||||
/* 文本区域 */
|
||||
.layui-text{color:var(--lay-color-text-3)}
|
||||
.layui-text h1,.layui-text h2,.layui-text h3,.layui-text h4,.layui-text h5,.layui-text h6{color: var(--lay-color-text-2)}
|
||||
.layui-text-em,.layui-word-aux{color: var(--lay-color-text-2)!important}
|
||||
.layui-text a:not(.layui-btn){color:var(--lay-color-lightblue-6)}
|
||||
.layui-text blockquote:not(.layui-elem-quote){border-left:5px solid var(--lay-color-border-4)}
|
||||
.layui-text pre>code:not(.layui-code){background-color:var(--lay-color-bg-white)}
|
||||
/* 字体颜色 */
|
||||
.layui-font-red{color:var(--lay-color-red-6)!important}
|
||||
.layui-font-orange{color:var(--lay-color-orange-6)!important}
|
||||
.layui-font-green{color:var(--lay-color-layuigreen-6)!important}
|
||||
.layui-font-cyan{color:var(--lay-color-cyan-6)!important}
|
||||
.layui-font-blue{color:var(--lay-color-lightblue-6)!important}
|
||||
.layui-font-black{color:var(--lay-color-black)!important}
|
||||
.layui-font-purple{color:var(--lay-color-purple-6)!important;}
|
||||
.layui-font-gray{color:var(--lay-color-gray-7)!important}
|
||||
/* 按钮 */
|
||||
.layui-btn{border:1px solid transparent;background-color:var(--lay-color-primary);color: var(--lay-color-text-1)}
|
||||
.layui-btn:hover{color: var(--lay-color-text-2)}
|
||||
.layui-btn-primary{border-color:var(--lay-color-border-2);color:var(--lay-color-text-1);background-color: var(--lay-color-bg-4)}
|
||||
.layui-btn-primary:hover{border-color: transparent;color:var(--lay-color-text-2)}
|
||||
.layui-btn-normal{background-color: var(--lay-color-normal)}
|
||||
.layui-btn-warm{background-color:var(--lay-color-warning)}
|
||||
.layui-btn-danger{background-color:var(--lay-color-danger)}
|
||||
.layui-btn-checked{background-color:var(--lay-color-success)}
|
||||
.layui-btn-disabled,.layui-btn-disabled:active,.layui-btn-disabled:hover{border-color: var(--lay-color-border-2)!important;background-color: var(--lay-color-bg-2)!important;color: var(--lay-color-text-4)!important}
|
||||
.layui-btn-group .layui-btn{border-left:1px solid var(--lay-color-border-2)}
|
||||
.layui-btn-group .layui-btn-primary:hover{border-color:var(--lay-color-border-2);color:var(--lay-color-primary)}
|
||||
.layui-btn-group .layui-btn-primary:first-child{border-left:1px solid var(--lay-color-gray-5)}
|
||||
/*表单*/
|
||||
.layui-input,.layui-select,.layui-textarea{background-color: var(--lay-color-fill-2);color: var(--lay-color-text-2)}
|
||||
.layui-input[disabled],.layui-select[disabled],.layui-textarea[disabled]{background-color: var(--lay-color-fill-1);color: var(--lay-color-text-4);border-color: var(--lay-color-border-1)!important;}
|
||||
.layui-input:hover,.layui-textarea:hover{border-color: var(--lay-color-border-2)!important}
|
||||
.layui-input:focus,.layui-textarea:focus{border-color: var(--lay-color-secondary-hover)!important;box-shadow: 0 0 0 3px rgba(22, 183, 119, 0.08);}
|
||||
.layui-input:hover[disabled],.layui-textarea:hover[disabled]{border-color: var(--lay-color-border-1)!important}
|
||||
.layui-input:focus[disabled],.layui-textarea:focus[disabled]{border-color: var(--lay-color-border-1)!important;}
|
||||
.layui-input:focus.layui-disabled,.layui-textarea:focus.layui-disabled{border-color: var(--lay-color-border-1)!important;box-shadow: 0 0 0 0}
|
||||
.layui-form-danger+.layui-form-select .layui-input,.layui-form-danger:focus{border-color:var(--lay-color-danger)!important;box-shadow: 0 0 0 3px rgba(255, 87, 34, 0.08);}
|
||||
/* 输入框点缀 */
|
||||
.layui-input-prefix .layui-icon,.layui-input-split .layui-icon,.layui-input-suffix .layui-icon{color: var(--lay-color-gray-8)}
|
||||
.layui-input-wrap .layui-input:hover+.layui-input-split{border-color: var(--lay-color-border-2)}
|
||||
.layui-input-wrap .layui-input[disabled]:hover+.layui-input-split{border-color: var(--lay-color-border-1)}
|
||||
.layui-input-wrap .layui-input:focus+.layui-input-split{border-color: var(--lay-color-secondary-hover)}
|
||||
.layui-input-affix .layui-icon{color: var(--lay-color-text-2)}
|
||||
.layui-input-affix .layui-icon-clear{color:var(--lay-color-text-2)}
|
||||
.layui-input-affix .layui-icon:hover{color:var(--lay-color-text-3)}
|
||||
/* 数字输入框动态点缀 */
|
||||
.layui-input-number .layui-icon:first-child{border-bottom-color:var(--lay-color-border-1)}
|
||||
/* 下拉选择 */
|
||||
.layui-form-select{color:var(--lay-color-text-2)}
|
||||
.layui-form-select .layui-edge{border-top-color:var(--lay-color-gray-8)}
|
||||
.layui-form-select dl{border:1px solid var( --lay-color-border-2);background-color: var(--lay-color-bg-5);box-shadow:1px 1px 4px rgb(0 0 0 / 8%)}
|
||||
.layui-form-select dl dt{color:var(--lay-color-gray-8)}
|
||||
.layui-form-select dl dd:hover{background-color:var(--lay-color-active)}
|
||||
.layui-form-select dl dd.layui-select-tips{color:var(--lay-color-text-2)}
|
||||
.layui-form-select dl dd.layui-this{background-color: var(--lay-color-active);color: var(--lay-color-text-1)}
|
||||
.layui-form-select dl dd.layui-disabled,.layui-form-select dl dd:hover.layui-disabled{background-color: var(--lay-color-bg-5)}
|
||||
.layui-select-none{color:var(--lay-color-black-8)}
|
||||
.layui-select-disabled .layui-disabled{border-color:var(--lay-color-border-1)!important}
|
||||
.layui-select-disabled .layui-edge{border-top-color:var(--lay-color-gray-6)}
|
||||
/* 复选框 */
|
||||
.layui-form-checkbox{background-color:var(--lay-color-fill-2)}
|
||||
.layui-form-checkbox > div{background-color:var(--lay-color-fill-3);color:var(--lay-color-text-2)}
|
||||
.layui-form-checkbox:hover > div{background-color: var(--lay-color-active)}
|
||||
.layui-form-checkbox > i{background-color: var(--lay-color-fill-1);border-top-color:var(--lay-color-border-1);border-right-color:var(--lay-color-border-1);border-bottom-color:var(--lay-color-border-1);border-left-color:initial;color:var(--lay-color-text-1)}
|
||||
.layui-form-checkbox:hover > i{border-color:var(--lay-color-border-2);color:var(--lay-color-text-4)}
|
||||
.layui-form-checked,.layui-form-checked:hover{border-color:var(--lay-color-secondary-active)}
|
||||
.layui-form-checked > div,.layui-form-checked:hover > div{background-color:var(--lay-color-secondary)}
|
||||
.layui-form-checked > i,.layui-form-checked:hover > i{color:var(--lay-color-secondary-hover)}
|
||||
.layui-form-checkbox.layui-checkbox-disabled > div{background-color: var(--lay-color-fill-3) !important;}
|
||||
/* 复选框-默认风格 */
|
||||
.layui-form-checkbox[lay-skin=primary]{background-image:none;background-color:initial;border-color:initial!important}
|
||||
.layui-form-checkbox[lay-skin=primary] > div{background-image:none;background-color:initial;color:var(--lay-color-text-2)}
|
||||
.layui-form-checkbox[lay-skin=primary] > i{border-color:var(--lay-color-border-1);background-color:var(--lay-color-fill-2)}
|
||||
.layui-form-checkbox[lay-skin=primary]:hover > i{border-color:var(--lay-color-secondary-hover);color:var(--lay-color-text-1)}
|
||||
.layui-form-checked[lay-skin=primary] > i{background-color:var(--lay-color-secondary);color:var(--lay-color-text-1);border-color:var(--lay-color-secondary-active)!important}
|
||||
.layui-checkbox-disabled[lay-skin=primary] > div{background:none!important;color:var(--lay-color-text-4)!important}
|
||||
.layui-form-checked.layui-checkbox-disabled[lay-skin=primary] > i{background-color:var(--lay-color-fill-1)!important;border-color:var(--lay-color-border-2)!important}
|
||||
.layui-checkbox-disabled[lay-skin=primary]:hover > i{border-color:var(--lay-color-border-1)}
|
||||
.layui-form-checkbox[lay-skin="primary"] > .layui-icon-indeterminate:before{background-color: var(--lay-color-secondary-hover);opacity: 1;}
|
||||
.layui-form-checkbox[lay-skin="primary"]:hover > .layui-icon-indeterminate:before{opacity: 1;}
|
||||
.layui-form-checkbox[lay-skin="primary"] > .layui-icon-indeterminate{border-color: var(--lay-color-secondary-hover);}
|
||||
/* 复选框-开关风格 */
|
||||
.layui-form-switch{border-color:var(--lay-color-border-2);background-color:var(--lay-color-fill-2)}
|
||||
.layui-form-switch > i{background-color:var(--lay-color-gray-4)}
|
||||
.layui-form-switch.layui-checkbox-disabled > i{background-color:var(--lay-color-gray-4)}
|
||||
.layui-form-switch > div{color:var(--lay-color-gray-8)!important}
|
||||
.layui-form-onswitch{border-color:var(--lay-color-secondary-active);background-color:var(--lay-color-secondary)}
|
||||
.layui-form-onswitch > i{background-color:var(--lay-color-gray-4)}
|
||||
.layui-form-onswitch > div{color:var(--lay-color-text-1)!important}
|
||||
.layui-checkbox-disabled{border-color:var(--lay-color-border-2)!important}
|
||||
.layui-checkbox-disabled > div{background-color:var(--lay-color-fill-3)!important;color: var(--lay-color-text-4)!important;}
|
||||
.layui-checkbox-disabled > i{border-color:var(--lay-color-border-2)!important}
|
||||
.layui-checkbox-disabled:hover > i{color:var(--lay-color-text-1)!important}
|
||||
.layui-form-switch.layui-checkbox-disabled > div{background-color:initial!important;}
|
||||
/*复选框背景优化*/
|
||||
.layui-form-checkbox > i:before{opacity:0;filter:alpha(opacity=0)}
|
||||
.layui-form-checkbox:hover > i:before{opacity:1;filter:alpha(opacity=100)}
|
||||
.layui-form-checked.layui-checkbox-disabled:hover > i:before,.layui-form-checked:hover > i:before,.layui-form-checked > i:before{opacity:1;filter:alpha(opacity=100)}
|
||||
.layui-form-checkbox[lay-skin=primary]:hover > i:before{opacity:0;filter:alpha(opacity=0)}
|
||||
.layui-form-checked[lay-skin=primary]:hover > i:before{opacity:1;filter:alpha(opacity=100)}
|
||||
.layui-checkbox-disabled:hover > i:before{opacity:0;filter:alpha(opacity=0)}
|
||||
/*单选框*/
|
||||
.layui-form-radio > i{color:var(--lay-color-gray-8)}
|
||||
.layui-form-radio:hover > *,.layui-form-radioed,.layui-form-radioed > i{color:var(--lay-color-secondary)}
|
||||
.layui-radio-disabled > i{color:var(--lay-color-text-4)!important}
|
||||
.layui-radio-disabled > *{color:var(--lay-color-text-4)!important}
|
||||
/* 表单方框风格 */
|
||||
.layui-form-pane .layui-form-label{background-color:var(--lay-color-bg-2)}
|
||||
/** 分页 **/
|
||||
.layui-laypage a,.layui-laypage button,.layui-laypage input,.layui-laypage select,.layui-laypage span{border:1px solid var(--lay-color-border-2)}
|
||||
.layui-laypage a,.layui-laypage span{background-color: var(--lay-color-bg-2);color: var(--lay-color-text-2)}
|
||||
.layui-laypage a[data-page]{color:var(--lay-color-text-2)}
|
||||
.layui-laypage a:hover{color: var(--lay-color-primary)}
|
||||
.layui-laypage .layui-laypage-spr{color:var(--lay-color-text-3)}
|
||||
.layui-laypage .layui-laypage-curr em{color: var(--lay-color-white)}
|
||||
.layui-laypage .layui-laypage-curr .layui-laypage-em{background-color: var(--lay-color-primary)}
|
||||
.layui-laypage .layui-laypage-skip{color:var(--lay-color-text-3)}
|
||||
.layui-laypage button,.layui-laypage input{background-color: var(--lay-color-bg-2)}
|
||||
.layui-laypage input:focus,.layui-laypage select:focus{border-color: var(--lay-color-primary)!important}
|
||||
/** 流加载 **/
|
||||
.layui-flow-more{color:var(--lay-color-text-1)}
|
||||
.layui-flow-more a cite{background-color: var(--lay-color-bg-4);color: var(--lay-color-text-1)}
|
||||
.layui-flow-more a i{color:var(--lay-color-text-2)}
|
||||
/** 表格 **/
|
||||
.layui-table{background-color: var(--lay-color-bg-2);color: var(--lay-color-text-2)}
|
||||
.layui-table-mend{background-color: var(--lay-color-bg-2)}
|
||||
.layui-table-click,.layui-table-hover,.layui-table[lay-even] tbody tr:nth-child(even){background-color:var(--lay-color-bg-2)}
|
||||
.layui-table-checked{background-color: var(--lay-color-gray-13);color: var(--lay-color-text-1)}
|
||||
.layui-table-checked.layui-table-hover,.layui-table-checked.layui-table-click{background-color: var(--lay-color-gray-12);}
|
||||
.layui-table td,.layui-table th,.layui-table-col-set,.layui-table-fixed-r,.layui-table-grid-down,.layui-table-header,.layui-table-mend,.layui-table-page,.layui-table-tips-main,.layui-table-tool,.layui-table-total,.layui-table-view,.layui-table[lay-skin=line],.layui-table[lay-skin=row]{border-color: var(--lay-color-border-2)}
|
||||
.layui-table-view .layui-table td[data-edit]:hover:after{border:1px solid var(--lay-color-primary-active)}
|
||||
.layui-table-init{background-color: var(--lay-color-bg-2);}
|
||||
.layui-table-init .layui-icon{color:var(--lay-color-gray-8);}
|
||||
.layui-table-page{background-color: var(--lay-color-bg-2);}
|
||||
.layui-table-tool{background-color: var(--lay-color-bg-2);}
|
||||
.layui-table-tool .layui-inline[lay-event]{color:var(--lay-color-text-3);border:1px solid var(--lay-color-border-2)}
|
||||
.layui-table-tool .layui-inline[lay-event]:hover{border:1px solid var(--lay-color-border-3)}
|
||||
.layui-table-tool-panel{color: var(--lay-color-text-1); border:1px solid var(--lay-color-border-2);background-color: var(--lay-color-bg-5);box-shadow:0 2px 4px rgba(0,0,0,.12)}
|
||||
.layui-table-tool-panel li:hover{background-color:var(--lay-color-active)}
|
||||
.layui-table-col-set{background-color: var(--lay-color-white)}
|
||||
.layui-table-sort .layui-table-sort-asc{border-bottom-color:var(--lay-color-border-4)}
|
||||
.layui-table-sort .layui-table-sort-asc:hover{border-bottom-color:var(--lay-color-border-3)}
|
||||
.layui-table-sort .layui-table-sort-desc{border-top-color:var(--lay-color-border-4)}
|
||||
.layui-table-sort .layui-table-sort-desc:hover{border-top-color:var(--lay-color-border-3)}
|
||||
.layui-table-sort[lay-sort=asc] .layui-table-sort-asc{border-bottom-color:var(--lay-color-bg-5)}
|
||||
.layui-table-sort[lay-sort=desc] .layui-table-sort-desc{border-top-color:var(--lay-color-bg-5)}
|
||||
.layui-table-cell .layui-table-link{color: var(--lay-color-lightblue-5)}
|
||||
.layui-table-body .layui-none{color:var(--lay-color-gray-8)}
|
||||
.layui-table-fixed-l{box-shadow:1px 0 8px rgba(0,0,0,1)}
|
||||
.layui-table-fixed-r{box-shadow:-1px 0 8px rgba(0,0,0,1)}
|
||||
.layui-table-edit{box-shadow:1px 1px 20px rgba(0,0,0,.15);background-color: var(--lay-color-bg-2)}
|
||||
.layui-table-edit:focus{border-color:var(--lay-color-secondary)!important}
|
||||
select.layui-table-edit{border-color:var(--lay-color-border-2)}
|
||||
.layui-table-grid-down{background-color: var(--lay-color-bg-5);color:var(--lay-color-gray-8)}
|
||||
.layui-table-grid-down:hover{background-color:var(--lay-color-bg-5)}
|
||||
body .layui-table-tips .layui-layer-content{box-shadow:0 1px 6px rgba(0,0,0,.12)}
|
||||
.layui-table-tips-main{background-color: var(--lay-color-bg-5);color: var(--lay-color-text-3)}
|
||||
.layui-table-tips-c{background-color:var(--lay-color-gray-7);color: var(--lay-color-text-1)}
|
||||
.layui-table-tips-c:hover{background-color:var(--lay-color-gray-8)}
|
||||
/** 文件上传 **/
|
||||
.layui-upload-choose{color:var(--lay-color-gray-8)}
|
||||
.layui-upload-drag{border:1px dashed var( --lay-color-border-2);background-color: var(--lay-color-bg-4);color: var(--lay-color-text-2)}
|
||||
.layui-upload-drag .layui-icon{color: var(--lay-color-primary)}
|
||||
.layui-upload-drag[lay-over]{border-color: var(--lay-color-primary)}
|
||||
/* 基础菜单元素 */
|
||||
.layui-menu{background-color: var( --lay-color-bg-2)}
|
||||
.layui-menu li{color: var(--lay-color-text-1)}
|
||||
.layui-menu li:hover{background-color: var( --lay-color-bg-5)}
|
||||
.layui-menu li.layui-disabled,.layui-menu li.layui-disabled *{color:var(--lay-color-text-4)!important}
|
||||
.layui-menu .layui-menu-item-group>.layui-menu-body-title{color: var(--lay-color-text-1)}
|
||||
.layui-menu .layui-menu-item-none{color:var(--lay-color-black)}
|
||||
.layui-menu .layui-menu-item-divider{border-bottom:1px solid var( --lay-color-border-2)}
|
||||
.layui-menu .layui-menu-item-up>.layui-menu-body-title{color: var(--lay-color-text-1)}
|
||||
.layui-menu .layui-menu-item-down:hover>.layui-menu-body-title>.layui-icon,.layui-menu .layui-menu-item-up>.layui-menu-body-title:hover>.layui-icon{color: var(--lay-color-text-1)}
|
||||
.layui-menu .layui-menu-item-checked,.layui-menu .layui-menu-item-checked2{background-color:var(--lay-color-active)!important;color:var(--lay-color-secondary)}
|
||||
.layui-menu .layui-menu-item-checked a,.layui-menu .layui-menu-item-checked2 a{color:var(--lay-color-secondary)}
|
||||
.layui-menu .layui-menu-item-checked:after{border-right:3px solid var(--lay-color-secondary)}
|
||||
.layui-menu-body-title a{color: var(--lay-color-text-1)}
|
||||
.layui-menu-lg .layui-menu-body-title a:hover,.layui-menu-lg li:hover{color:var(--lay-color-secondary)}
|
||||
/* 下拉菜单 */
|
||||
.layui-dropdown{background-color: var(--lay-color-bg-5)}
|
||||
.layui-dropdown.layui-panel,.layui-dropdown .layui-panel{background-color: var(--lay-color-bg-5)}
|
||||
.layui-dropdown.layui-panel .layui-menu{background-color: var(--lay-color-bg-5)}
|
||||
/** 导航菜单 **/
|
||||
.layui-nav{background-color:var(--lay-color-black-6);color: var(--lay-color-white)}
|
||||
.layui-nav .layui-nav-item a{color: var(--lay-color-text-1);}
|
||||
.layui-nav .layui-this:after,.layui-nav-bar{background-color:var(--lay-color-secondary)}
|
||||
.layui-nav .layui-nav-item a:hover,.layui-nav .layui-this a{color: var(--lay-color-text-1)}
|
||||
.layui-nav-child{box-shadow:0 2px 4px rgba(0,0,0,.12);border:1px solid var(--lay-color-border-2);background-color: var(--lay-color-bg-5)}
|
||||
.layui-nav .layui-nav-child a{color: var(--lay-color-text-1)}
|
||||
.layui-nav .layui-nav-child a:hover{background-color: var(--lay-color-bg-5);color: var(--lay-color-text-1)}
|
||||
.layui-nav-child dd.layui-this{background-color: var(--lay-color-bg-5);color: var(--lay-color-text-1)}
|
||||
.layui-nav-tree .layui-nav-child dd.layui-this,.layui-nav-tree .layui-nav-child dd.layui-this a,.layui-nav-tree .layui-this,.layui-nav-tree .layui-this>a,.layui-nav-tree .layui-this>a:hover{background-color: var(--lay-color-primary);color: var(--lay-color-white)}
|
||||
.layui-nav-itemed>a,.layui-nav-tree .layui-nav-title a,.layui-nav-tree .layui-nav-title a:hover{color: var(--lay-color-white)!important}
|
||||
.layui-nav-tree .layui-nav-bar{background-color:var(--lay-color-primary)}
|
||||
.layui-nav-tree .layui-nav-child a{color: var(--lay-color-white);color: var(--lay-color-white)}
|
||||
.layui-nav-tree .layui-nav-child,.layui-nav-tree .layui-nav-child a:hover{color: var(--lay-color-white)}
|
||||
.layui-nav-itemed>.layui-nav-child{background-color:rgba(0, 0, 0, .3) !important}
|
||||
.layui-nav-tree.layui-bg-gray a,.layui-nav.layui-bg-gray .layui-nav-item a{color: var(--lay-color-black-4)}
|
||||
.layui-nav.layui-bg-gray .layui-nav-child{background-color: var(--lay-color-gray-1);}
|
||||
.layui-nav-tree.layui-bg-gray .layui-nav-itemed>a{color:#333!important}
|
||||
.layui-nav.layui-bg-gray .layui-this a{color:var(--lay-color-secondary)}
|
||||
.layui-nav-tree.layui-bg-gray .layui-nav-child dd.layui-this,.layui-nav-tree.layui-bg-gray .layui-nav-child dd.layui-this a,.layui-nav-tree.layui-bg-gray .layui-this,.layui-nav-tree.layui-bg-gray .layui-this>a{color:var(--lay-color-secondary)!important}
|
||||
.layui-nav-tree.layui-bg-gray .layui-nav-bar{background-color:var( --lay-color-secondary)}
|
||||
/** 面包屑 **/
|
||||
.layui-breadcrumb a{color:var(--lay-color-gray-7)!important}
|
||||
.layui-breadcrumb a:hover{color:var(--lay-color-secondary)!important}
|
||||
.layui-breadcrumb a cite{color:var(--lay-color-gray-8)}
|
||||
.layui-breadcrumb span[lay-separator]{color:var(--lay-color-gray-7)}
|
||||
/** Tab 选项卡 **/
|
||||
.layui-tab-title .layui-this{color: var(--lay-color-text-2)}
|
||||
.layui-tab-title .layui-this:after{border-bottom-color: var(--lay-color-border-2)}
|
||||
.layui-tab-bar{background-color: var(--lay-color-bg-3)}
|
||||
.layui-tab-more li.layui-this:after{border-bottom-color:var(--lay-color-gray-3)}
|
||||
.layui-tab-title li .layui-tab-close{color:var(--lay-color-gray-8)}
|
||||
.layui-tab-title li .layui-tab-close:hover{background-color:var(--lay-color-danger);color: var(--lay-color-white)}
|
||||
.layui-tab-brief>.layui-tab-title .layui-this{color:var( --lay-color-primary)}
|
||||
.layui-tab-brief>.layui-tab-more li.layui-this:after,.layui-tab-brief>.layui-tab-title .layui-this:after{border-bottom:2px solid var(--lay-color-secondary)}
|
||||
.layui-tab-card{box-shadow:0 2px 5px 0 rgba(0,0,0,.1)}
|
||||
.layui-tab-card>.layui-tab-title{background-color: var(--lay-color-bg-2)}
|
||||
.layui-tab-card>.layui-tab-title .layui-this{background-color: var(--lay-color-bg-1)}
|
||||
.layui-tab-card>.layui-tab-title .layui-this:after{border-bottom-color: var(--lay-color-bg-1)}
|
||||
.layui-tab-card>.layui-tab-more .layui-this{color:var(--lay-color-secondary)}
|
||||
/*时间线*/
|
||||
.layui-timeline-axis{background-color: var(--lay-color-bg-4);color:var(--lay-color-secondary)}
|
||||
.layui-timeline-axis:hover{color:var(--lay-color-red-6)}
|
||||
.layui-timeline-item:before{background-color: var(--lay-color-bg-3)}
|
||||
/*徽章*/
|
||||
.layui-badge,.layui-badge-dot,.layui-badge-rim{background-color:var(--lay-color-red-6);color: var(--lay-color-white)}
|
||||
.layui-badge-rim{background-color: var(--lay-color-white);color:var(--lay-color-black-6)}
|
||||
/* carousel 轮播 */
|
||||
.layui-carousel{background-color:var(--lay-color-gray-2)}
|
||||
.layui-carousel>[carousel-item]:before{color:var(--lay-color-gray-8);-moz-osx-font-smoothing:grayscale}
|
||||
.layui-carousel>[carousel-item]>*{background-color:var(--lay-color-gray-2)}
|
||||
.layui-carousel-arrow{background-color:rgba(0,0,0,.2);color: var(--lay-color-white)}
|
||||
.layui-carousel-arrow:hover,.layui-carousel-ind ul:hover{background-color:var(--lay-color-black)}
|
||||
.layui-carousel[lay-indicator=outside] .layui-carousel-ind ul{background-color:var(--lay-color-black)}
|
||||
.layui-carousel-ind ul{background-color:rgba(0,0,0,.2)}
|
||||
.layui-carousel-ind ul li{background-color:var(--lay-color-gray-3);background-color: var(--lay-color-text-3)}
|
||||
.layui-carousel-ind ul li:hover{background-color: var(--lay-color-white)}
|
||||
.layui-carousel-ind ul li.layui-this{background-color: var(--lay-color-white)}
|
||||
/** fixbar **/
|
||||
.layui-fixbar li{background-color:var(--lay-color-black-5);color: var(--lay-color-text-1)}
|
||||
/** 表情面板 **/
|
||||
body .layui-util-face .layui-layer-content{background-color: var(--lay-color-bg-5);color:var(--lay-color-text-2)}
|
||||
.layui-util-face ul{border:1px solid var(--lay-color-border-3);background-color: var(--lay-color-bg-5);box-shadow:0 0 20px rgba(0,0,0,.2)}
|
||||
.layui-util-face ul li{border:1px solid var(--lay-color-border-2)}
|
||||
.layui-util-face ul li:hover{border:1px solid var(--lay-color-red-7);background: var(--lay-color-text-1)}
|
||||
/** 代码文本修饰 **/
|
||||
.layui-code{border:1px solid var(--lay-color-border-2);background-color: var(--lay-color-bg-white);color: var(--lay-color-black-5)}
|
||||
/** 穿梭框 **/
|
||||
.layui-transfer-box,.layui-transfer-header,.layui-transfer-search{border-color: var(--lay-color-border-2)}
|
||||
.layui-transfer-box{background-color: var(--lay-color-bg-2)}
|
||||
.layui-transfer-search .layui-icon-search{color:var(--lay-color-gray-8)}
|
||||
.layui-transfer-active .layui-btn{background-color:var( --lay-color-secondary);border-color:var( --lay-color-secondary);color: var(--lay-color-white)}
|
||||
.layui-transfer-active .layui-btn-disabled{background-color:var(--lay-color-gray-2);border-color:var(--lay-color-gray-3);color:var(--lay-color-gray-8)}
|
||||
.layui-transfer-data li:hover{background-color:var(--lay-color-active)}
|
||||
/* chrome 105 */
|
||||
.layui-transfer-data li:hover:has([lay-filter="layTransferCheckbox"][disabled]){background-color:var(--lay-color-bg-2)}
|
||||
.layui-transfer-data .layui-none{color:var(--lay-color-gray-7)}
|
||||
/** 评分组件 **/
|
||||
.layui-rate li i.layui-icon{color:var(--lay-color-orange-6)}
|
||||
/** 颜色选择器 **/
|
||||
.layui-colorpicker{border:1px solid var(--lay-color-border-2)}
|
||||
.layui-colorpicker:hover{border-color: var( --lay-color-border-2)}
|
||||
.layui-colorpicker-trigger-span{border:1px solid var(--lay-color-black)}
|
||||
.layui-colorpicker-trigger-i{color: var(--lay-color-white)}
|
||||
.layui-colorpicker-trigger-i.layui-icon-close{color:var(--lay-color-black-7)}
|
||||
.layui-colorpicker-main{background: var(--lay-color-bg-2);border:1px solid var( --lay-color-border-2);box-shadow:0 2px 4px rgba(0,0,0,.12)}
|
||||
.layui-colorpicker-basis-white{background:linear-gradient(90deg, #fff,hsla(0,0%,100%,0))} /* danger: 勿改*/
|
||||
.layui-colorpicker-basis-black{background:linear-gradient(0deg,#000,transparent)} /* danger: 勿改*/
|
||||
.layui-colorpicker-basis-cursor{border:1px solid var(--lay-color-white)}
|
||||
.layui-colorpicker-side{background:linear-gradient(linear-gradient(#F00, #FF0, #0F0, #0FF, #00F, #F0F, #F00))} /* danger: 勿改*/
|
||||
.layui-colorpicker-side-slider{box-shadow:0 0 1px #888;background: var(--lay-color-white);border:1px solid var(--lay-color-gray-2)}
|
||||
.layui-colorpicker-alpha-slider{box-shadow:0 0 1px #888;background: var(--lay-color-white);border:1px solid var(--lay-color-gray-2)}
|
||||
.layui-colorpicker-pre.layui-this{box-shadow:0 0 3px 2px rgba(0,0,0,.15)}
|
||||
.layui-colorpicker-main-input input.layui-input{color: var(--lay-color-text-2)}
|
||||
/** 滑块 **/
|
||||
.layui-slider{background: var( --lay-color-bg-5)}
|
||||
.layui-slider-step{background: var(--lay-color-fill-4)}
|
||||
.layui-slider-wrap-btn{background: var(--lay-color-bg-4)}
|
||||
.layui-slider-tips{color: var(--lay-color-text-1);background:var(--lay-color-black)}
|
||||
.layui-slider-tips:after{border-color:var(--lay-color-black) transparent transparent transparent}
|
||||
.layui-slider-input{border:1px solid var(--lay-color-border-2)}
|
||||
.layui-slider-input-btn{border-left:1px solid var(--lay-color-border-2)}
|
||||
.layui-slider-input-btn i{color:var(--lay-color-gray-9)}
|
||||
.layui-slider-input-btn i:first-child{border-bottom:1px solid var(--lay-color-border-2)}
|
||||
.layui-slider-input-btn i:hover{color:var(--lay-color-primary)}
|
||||
/** 树组件 **/
|
||||
.layui-tree-line .layui-tree-set .layui-tree-set:after{border-top:1px dotted var(--lay-color-gray-7)}
|
||||
.layui-tree-entry:hover{background-color: var(--lay-color-bg-4)}
|
||||
.layui-tree-line .layui-tree-entry:hover{background-color:var(--lay-color-black)}
|
||||
.layui-tree-line .layui-tree-entry:hover .layui-tree-txt{color:var(--lay-color-text-3)}
|
||||
.layui-tree-entry:hover:has(span.layui-tree-txt.layui-disabled){background-color: transparent !important}
|
||||
.layui-tree-line .layui-tree-set:before{border-left:1px dotted var(--lay-color-gray-7)}
|
||||
.layui-tree-iconClick{color:var(--lay-color-gray-7)}
|
||||
.layui-tree-icon{border:1px solid var(--lay-color-gray-8)}
|
||||
.layui-tree-icon .layui-icon{color:var(--lay-color-text-1)}
|
||||
.layui-tree-iconArrow:after{border-color:transparent transparent transparent var(--lay-color-gray-7)}
|
||||
.layui-tree-txt{color:var(--lay-color-text-2)}
|
||||
.layui-tree-search{color:var(--lay-color-black-7)}
|
||||
.layui-tree-btnGroup .layui-icon:hover{color:var(--lay-color-text-2)}
|
||||
.layui-tree-editInput{background-color:var(--lay-color-fill-2)}
|
||||
.layui-tree-emptyText{color:var(--lay-color-text-2)}
|
||||
/*code 不处理*/
|
||||
.layui-code-view{border:1px solid var(--lay-color-border-1);background-color: var(--lay-color-bg-2);color: var(--lay-color-text-2); border-left-width: 6px;}
|
||||
.layui-code-title{border-bottom:1px solid var(--lay-color-border-2)}
|
||||
.layui-code-title>.layui-code-about{color:#c5c5c5}
|
||||
.layui-code-view>.layui-code-ol>li{border-left:1px solid var(--lay-color-border-2);background-color: var(--lay-color-bg-2)}
|
||||
.layui-code-view>.layui-code-ul>li{background-color: var(--lay-color-bg-2)}
|
||||
.layui-code-dark{border:1px solid #3d3d3d;border-left-color:#656565;background-color:#3d3d3d;color:var(--lay-color-gray-8)}
|
||||
.layui-code-dark>.layui-code-ol>li,.layui-code-dark>.layui-code-ul>li{background-color:#3f3f3f}
|
||||
.layui-code-full{background-color: var(--lay-color-bg-1)}
|
||||
/*日期选择器*/
|
||||
.layui-laydate-header i{color:var(--lay-color-gray-8)}
|
||||
.laydate-day-holidays:before{color:var(--lay-color-red-6)}
|
||||
.layui-laydate .layui-this .laydate-day-holidays:before{color: var(--lay-color-white)}
|
||||
.layui-laydate-footer span{border:1px solid var(--lay-color-border-2);background-color: var(--lay-color-bg-5)}
|
||||
.layui-laydate-footer span:hover{color:var(--lay-color-secondary)}
|
||||
.layui-laydate-footer span.layui-laydate-preview{border-color:transparent!important;}
|
||||
.layui-laydate-footer span.layui-laydate-preview:hover{color:var(--lay-color-black-7)}
|
||||
.layui-laydate-shortcut+.layui-laydate-main{border-left:1px solid var(--lay-color-border-2)}
|
||||
.layui-laydate .layui-laydate-list{background-color: var(--lay-color-bg-5)}
|
||||
.layui-laydate-hint{color:var(--lay-color-danger)}
|
||||
.layui-laydate-range .laydate-main-list-1 .layui-laydate-content,.layui-laydate-range .laydate-main-list-1 .layui-laydate-header{border-left:1px solid var(--lay-color-border-2)}
|
||||
.layui-laydate,.layui-laydate-hint{border:1px solid var(--lay-color-border-2);box-shadow:0 2px 4px rgba(0,0,0,.12);background-color: var(--lay-color-bg-5);color: var(--lay-color-text-1)}
|
||||
.layui-laydate-header{border-bottom:1px solid var( --lay-color-border-2)}
|
||||
.layui-laydate-header i:hover,.layui-laydate-header span:hover{color:var(--lay-color-secondary)}
|
||||
.layui-laydate-content th{color: var(--lay-color-text-1)}
|
||||
.layui-laydate-content td{color: var(--lay-color-text-1)}
|
||||
.layui-laydate-content td.laydate-day-now{color:var(--lay-color-secondary)}
|
||||
.layui-laydate-content td.laydate-day-now:after{border:1px solid var(--lay-color-secondary)}
|
||||
.layui-laydate-linkage .layui-laydate-content td.laydate-selected>div{background-color:var(--lay-color-secondary-light)}
|
||||
.layui-laydate-linkage .laydate-selected:hover>div{background-color:var(--lay-color-green-4)!important}
|
||||
.layui-laydate-content td>div:hover,.layui-laydate-list li:hover,.layui-laydate-shortcut>li:hover{background-color: var(--lay-color-fill-2);color: var(--lay-color-text-2)}
|
||||
.laydate-time-list li ol{border:1px solid var(--lay-color-border-2)}
|
||||
.layui-laydate-content .laydate-day-next,.layui-laydate-content .laydate-day-prev{color: var(--lay-color-text-4)}
|
||||
.layui-laydate-linkage .laydate-selected.laydate-day-next>div,.layui-laydate-linkage .laydate-selected.laydate-day-prev>div{background-color: var(--lay-color-bg-5)!important}
|
||||
.layui-laydate-footer{border-top:1px solid var(--lay-color-border-2)}
|
||||
.layui-laydate-hint{color:var(--lay-color-danger)}
|
||||
.laydate-day-mark::after{background-color:var(--lay-color-secondary)}
|
||||
.layui-laydate-footer span[lay-type=date]{color:var(--lay-color-secondary)}
|
||||
.layui-laydate .layui-this,.layui-laydate .layui-this>div{background-color:var(--lay-color-primary)!important;color: var(--lay-color-white)!important}
|
||||
.layui-laydate .laydate-disabled,.layui-laydate .laydate-disabled:hover{color: var(--lay-color-text-4)!important}
|
||||
.laydate-theme-molv .layui-laydate-header{background-color:var(--lay-color-primary)}
|
||||
.laydate-theme-molv .layui-laydate-header i,.laydate-theme-molv .layui-laydate-header span{color:var(--lay-color-gray-2)}
|
||||
.laydate-theme-molv .layui-laydate-header i:hover,.laydate-theme-molv .layui-laydate-header span:hover{color: var(--lay-color-white)}
|
||||
.laydate-theme-molv .layui-laydate-content{border:1px solid var(--lay-color-border-2)}
|
||||
.laydate-theme-molv .layui-laydate-footer{border:1px solid var(--lay-color-border-2)}
|
||||
.laydate-theme-grid .laydate-month-list>li,.laydate-theme-grid .laydate-year-list>li,.laydate-theme-grid .layui-laydate-content td,.laydate-theme-grid .layui-laydate-content thead{border:1px solid var(--lay-color-border-2)}
|
||||
.layui-laydate-linkage.laydate-theme-grid .laydate-selected,.layui-laydate-linkage.laydate-theme-grid .laydate-selected:hover{background-color:var(--lay-color-gray-3)!important;color:var(--lay-color-primary)!important}
|
||||
.layui-laydate-linkage.laydate-theme-grid .laydate-selected.laydate-day-next,.layui-laydate-linkage.laydate-theme-grid .laydate-selected.laydate-day-prev{color:var(--lay-color-gray-6)!important}
|
||||
.layui-laydate.laydate-theme-circle .layui-laydate-content table td.layui-this{background-color:transparent!important}
|
||||
/*layer*/
|
||||
.layui-layer{background-color: var(--lay-color-bg-3);box-shadow:1px 1px 50px rgba(0,0,0,.3)}
|
||||
.layui-layer-border{border:1px solid var(--lay-color-border-2);box-shadow:1px 1px 5px rgba(0,0,0,.2)}
|
||||
.layui-layer-move{background-color: var(--lay-color-bg-5)}
|
||||
.layui-layer-title{border-bottom:1px solid var(--lay-color-border-2);color: var(--lay-color-text-1)}
|
||||
.layui-layer-setwin span{color: var(--lay-color-text-1)}
|
||||
.layui-layer-setwin .layui-layer-min:before{background-color:var(--lay-color-text-3)}
|
||||
.layui-layer-setwin .layui-layer-min:hover:before{background-color:var(--lay-color-info-hover)}
|
||||
.layui-layer-setwin .layui-layer-max:after,.layui-layer-setwin .layui-layer-max:before{border:1px solid var(--lay-color-text-3)}
|
||||
.layui-layer-setwin .layui-layer-max:hover:after,.layui-layer-setwin .layui-layer-max:hover:before{border-color:var(--lay-color-info-hover)}
|
||||
.layui-layer-setwin .layui-layer-min:hover:before{background-color:var(--lay-color-info-hover)}
|
||||
.layui-layer-setwin .layui-layer-maxmin:after,.layui-layer-setwin .layui-layer-maxmin:before{background-color: var(--lay-color-bg-5)}
|
||||
.layui-layer-setwin .layui-layer-close2{color:var(--lay-color-text-1);background-color:var(--lay-color-gray-10)}
|
||||
.layui-layer-setwin .layui-layer-close2:hover{background-color:var(--lay-color-normal)}
|
||||
.layui-layer-btn a{border:1px solid var(--lay-color-border-2);background-color: var( --lay-color-bg-3);color: var(--lay-color-text-2)}
|
||||
.layui-layer-btn .layui-layer-btn0{border-color: var(--lay-color-normal);background-color: var(--lay-color-normal);color: var(--lay-color-text-1)}
|
||||
.layui-layer-dialog .layui-layer-content .layui-layer-face{color:var(--lay-color-gray-9)}
|
||||
.layui-layer-dialog .layui-layer-content .layui-icon-tips{color:var(--lay-color-warning)}
|
||||
.layui-layer-dialog .layui-layer-content .layui-icon-success{color: var(--lay-color-success)}
|
||||
.layui-layer-dialog .layui-layer-content .layui-icon-error{top: 19px; color: var(--lay-color-danger)}
|
||||
.layui-layer-dialog .layui-layer-content .layui-icon-question{color: var(--lay-color-warning);}
|
||||
.layui-layer-dialog .layui-layer-content .layui-icon-lock{color: var(--lay-color-gray-10)}
|
||||
.layui-layer-dialog .layui-layer-content .layui-icon-face-cry{color:var(--lay-color-danger)}
|
||||
.layui-layer-dialog .layui-layer-content .layui-icon-face-smile{color:var(--lay-color-success)}
|
||||
.layui-layer-rim{border:6px solid var(--lay-color-gray-8);border:6px solid var(--lay-color-border-2)}
|
||||
.layui-layer-msg{border:1px solid var( --lay-color-border-2)}
|
||||
.layui-layer-hui{background-color: var(--lay-color-bg-3);color: var(--lay-color-text-1)}
|
||||
.layui-layer-hui .layui-layer-close{color: var(--lay-color-white)}
|
||||
.layui-layer-loading-icon{color:var(--lay-color-gray-9)}
|
||||
.layui-layer-loading-2:after,.layui-layer-loading-2:before{border:3px solid var(--lay-color-gray-6)}
|
||||
.layui-layer-loading-2:after{border-color:transparent;border-left-color: var(--lay-color-normal)}
|
||||
.layui-layer-tips .layui-layer-content{box-shadow:1px 1px 3px rgba(0,0,0,.2);background-color: var(--lay-color-bg-5);color: var(--lay-color-text-1)}
|
||||
.layui-layer-tips i.layui-layer-TipsG{border-color:transparent}
|
||||
.layui-layer-tips i.layui-layer-TipsB,.layui-layer-tips i.layui-layer-TipsT{border-right-color:var(--lay-color-black)}
|
||||
.layui-layer-tips i.layui-layer-TipsL,.layui-layer-tips i.layui-layer-TipsR{border-bottom-color:var(--lay-color-black)}
|
||||
.layui-layer-lan .layui-layer-title{background:var(--lay-color-blue-5);color: var(--lay-color-text-1)}
|
||||
.layui-layer-lan .layui-layer-btn{border-top:1px solid var(--lay-color-border-3)}
|
||||
.layui-layer-lan .layui-layer-btn a{background: var(--lay-color-white);border-color:var(--lay-color-border-3);color: var(--lay-color-black-7)}
|
||||
.layui-layer-lan .layui-layer-btn .layui-layer-btn1{background: var(--lay-color-gray-7)}
|
||||
.layui-layer-molv .layui-layer-title{background:var(--lay-color-layuigreen-6);color: var(--lay-color-text-1)}
|
||||
.layui-layer-molv .layui-layer-btn a{background:var(--lay-color-layuigreen-6);border-color:var(--lay-color-layuigreen-6)}
|
||||
.layui-layer-molv .layui-layer-btn .layui-layer-btn1{background:var(--lay-color-gray-7)}
|
||||
.layui-layer-prompt .layui-layer-input{border:1px solid var(--lay-color-border-2);color: var(--lay-color-text-2)}
|
||||
.layui-layer-tab{box-shadow:1px 1px 50px rgba(0,0,0,.4)}
|
||||
.layui-layer-tab .layui-layer-title span.layui-this{border-left:1px solid var(--lay-color-border-2);border-right:1px solid var(--lay-color-border-2);background-color: var(--lay-color-bg-3)}
|
||||
.layui-layer-imgnext,.layui-layer-imgprev{color:var(--lay-color-gray-9)}
|
||||
.layui-layer-imgnext:hover,.layui-layer-imgprev:hover{color:var(--lay-color-gray-8)}
|
||||
.layui-layer-imgbar{background-color:#333\9;background-color: var(--lay-color-bg-5);color: var(--lay-color-text-1)}
|
||||
.layui-layer-imgtit *{color: var(--lay-color-text-1)}
|
||||
.layui-layer-imgtit a:hover{color: var(--lay-color-text-2)}
|
||||
.layui-layer-tips i.layui-layer-TipsB,.layui-layer-tips i.layui-layer-TipsT{border-right-color: var(--lay-color-bg-5)}
|
||||
.layui-layer-tips i.layui-layer-TipsL,.layui-layer-tips i.layui-layer-TipsR{border-bottom-color: var(--lay-color-bg-5)}
|
||||
.layui-layer-prompt .layui-layer-input{border:1px solid var(--lay-color-border-2);color:var(--lay-color-text-1);background-color:var(--lay-color-black)}
|
||||
.layui-layer-prompt .layui-layer-input:focus{outline:0}
|
||||
|
||||
/*fix style*/
|
||||
.layui-layer-loading{background:0 0}
|
||||
.layui-btn-primary{border-color:transparent}
|
||||
.layui-btn-group .layui-btn:first-child{border-left:none}
|
||||
.layui-btn-group .layui-btn-primary:hover{border-top-color:transparent; border-bottom-color: transparent;}
|
||||
.layui-menu li:hover{background-color:var(--lay-color-fill-2)}
|
||||
.layui-nav-child dd.layui-this{background-color:var(--lay-color-fill-2)}
|
||||
.layui-nav .layui-nav-child a:hover{background-color:var(--lay-color-fill-2)}
|
||||
.layui-nav .layui-nav-item a:hover,.layui-nav .layui-this a{background-color: var(--lay-color-fill-2)}
|
||||
.layui-nav-child dd.layui-this{background-color: var(--lay-color-fill-2)}
|
||||
.layui-tab-card>.layui-tab-title .layui-this:after,.layui-tab-title .layui-this:after{border-bottom-color:var(--lay-color-bg-1)}
|
||||
.layui-form-select dl dd:hover{background-color:var(--lay-color-fill-2)}
|
||||
.layui-form-select dl dd.layui-this{background-color:var(--lay-color-fill-2)}
|
||||
.layui-laypage button{color:var(--lay-color-text-1)}
|
||||
.layui-table-click,.layui-table-hover,.layui-table[lay-even] tbody tr:nth-child(even){background-color:var(--lay-color-fill-3)}
|
||||
.layui-menu .layui-menu-item-checked,.layui-menu .layui-menu-item-checked2{background-color:var(--lay-color-fill-2)!important}
|
||||
.layui-input-split{background-color: var(--lay-color-bg-2);}
|
||||
.layui-layer-tab .layui-layer-title span:first-child{border-left: none !important;}
|
||||
.layui-slider-input.layui-input,
|
||||
.layui-slider-input .layui-input {background-color: var(--lay-color-bg-2);}
|
||||
|
||||
a {
|
||||
color: var(--lay-color-text-1)
|
||||
}
|
||||
|
||||
.layui-code,
|
||||
pre>code {
|
||||
background-color: var(--lay-color-bg-2)
|
||||
}
|
||||
289
public/static/admin/css/login.css
Normal file
@ -0,0 +1,289 @@
|
||||
body {
|
||||
background: #333333;
|
||||
}
|
||||
|
||||
.demo {
|
||||
padding-top: 20px;
|
||||
text-align: center;
|
||||
color: #9abcda !important;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
.main-body {
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
position: absolute;
|
||||
-webkit-transform: translate(-50%, -50%);
|
||||
-moz-transform: translate(-50%, -50%);
|
||||
-ms-transform: translate(-50%, -50%);
|
||||
-o-transform: translate(-50%, -50%);
|
||||
transform: translate(-50%, -50%);
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.login-main .login-bottom .center .item input {
|
||||
display: inline-block;
|
||||
width: 227px;
|
||||
height: 22px;
|
||||
padding: 0;
|
||||
position: absolute;
|
||||
border: 0;
|
||||
outline: 0;
|
||||
font-size: 14px;
|
||||
letter-spacing: 0;
|
||||
}
|
||||
|
||||
.login-main .login-bottom .center .item .icon-1 {
|
||||
background: url(../images/icon-login.png) no-repeat 1px 0;
|
||||
}
|
||||
|
||||
.login-main .login-bottom .center .item .icon-2 {
|
||||
background: url(../images/icon-login.png) no-repeat -54px 0;
|
||||
}
|
||||
|
||||
.login-main .login-bottom .center .item .icon-3 {
|
||||
background: url(../images/icon-login.png) no-repeat -106px 0;
|
||||
}
|
||||
|
||||
.login-main .login-bottom .center .item .icon-4 {
|
||||
background: url(../images/icon-login.png) no-repeat 0 -43px;
|
||||
position: absolute;
|
||||
right: -10px;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.login-main .login-bottom .center .item .icon-5 {
|
||||
background: url(../images/icon-login.png) no-repeat -55px -43px;
|
||||
}
|
||||
|
||||
.login-main .login-bottom .center .item .icon-6 {
|
||||
background: url(../images/icon-login.png) no-repeat 0 -93px;
|
||||
position: absolute;
|
||||
right: -10px;
|
||||
margin-top: 8px;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
|
||||
.login-main .login-bottom .tip .icon-nocheck {
|
||||
display: inline-block;
|
||||
width: 10px;
|
||||
height: 10px;
|
||||
border-radius: 2px;
|
||||
border: solid 1px #9abcda;
|
||||
position: relative;
|
||||
top: 2px;
|
||||
margin: 1px 8px 1px 1px;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.login-main .login-bottom .tip .icon-check {
|
||||
margin: 0 7px 0 0;
|
||||
width: 14px;
|
||||
height: 14px;
|
||||
border: none;
|
||||
background: url(../images/icon-login.png) no-repeat -111px -48px;
|
||||
}
|
||||
|
||||
.login-main .login-bottom .center .item .icon {
|
||||
display: inline-block;
|
||||
width: 33px;
|
||||
height: 22px;
|
||||
}
|
||||
|
||||
.login-main .login-bottom .center .item {
|
||||
width: 288px;
|
||||
height: 35px;
|
||||
border-bottom: 1px solid #dae1e6;
|
||||
margin-bottom: 35px;
|
||||
}
|
||||
|
||||
.login-main {
|
||||
width: 428px;
|
||||
position: relative;
|
||||
float: left;
|
||||
}
|
||||
|
||||
.login-main .login-top {
|
||||
height: 117px;
|
||||
background-color: #148be4;
|
||||
border-radius: 12px 12px 0 0;
|
||||
font-family: SourceHanSansCN-Regular;
|
||||
font-size: 30px;
|
||||
font-weight: 400;
|
||||
font-stretch: normal;
|
||||
letter-spacing: 0;
|
||||
color: #fff;
|
||||
line-height: 117px;
|
||||
text-align: center;
|
||||
overflow: hidden;
|
||||
-webkit-transform: rotate(0);
|
||||
-moz-transform: rotate(0);
|
||||
-ms-transform: rotate(0);
|
||||
-o-transform: rotate(0);
|
||||
transform: rotate(0);
|
||||
}
|
||||
|
||||
.login-main .login-top .bg1 {
|
||||
display: inline-block;
|
||||
width: 74px;
|
||||
height: 74px;
|
||||
background: #fff;
|
||||
opacity: .1;
|
||||
border-radius: 0 74px 0 0;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
top: 43px;
|
||||
}
|
||||
|
||||
|
||||
.login-main .login-top .bg2 {
|
||||
display: inline-block;
|
||||
width: 94px;
|
||||
height: 94px;
|
||||
background: #fff;
|
||||
opacity: .1;
|
||||
border-radius: 50%;
|
||||
position: absolute;
|
||||
right: -16px;
|
||||
top: -16px;
|
||||
}
|
||||
|
||||
.login-main .login-bottom {
|
||||
width: 428px;
|
||||
background: #fff;
|
||||
border-radius: 0 0 12px 12px;
|
||||
padding-bottom: 53px;
|
||||
}
|
||||
|
||||
.login-main .login-bottom .center {
|
||||
width: 288px;
|
||||
margin: 0 auto;
|
||||
padding-top: 40px;
|
||||
padding-bottom: 15px;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.login-main .login-bottom .tip {
|
||||
clear: both;
|
||||
height: 16px;
|
||||
line-height: 16px;
|
||||
width: 288px;
|
||||
margin: 0 auto;
|
||||
}
|
||||
|
||||
.container {
|
||||
position: static;
|
||||
font-size: 12px;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
input::-webkit-input-placeholder {
|
||||
color: #a6aebf;
|
||||
}
|
||||
|
||||
input::-moz-placeholder { /* Mozilla Firefox 19+ */
|
||||
color: #a6aebf;
|
||||
}
|
||||
|
||||
input:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
|
||||
color: #a6aebf;
|
||||
}
|
||||
|
||||
input:-ms-input-placeholder { /* Internet Explorer 10-11 */
|
||||
color: #a6aebf;
|
||||
}
|
||||
|
||||
input:-webkit-autofill { /* 取消Chrome记住密码的背景颜色 */
|
||||
-webkit-box-shadow: 0 0 0 1000px white inset !important;
|
||||
}
|
||||
|
||||
html {
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.login-main .login-bottom .tip {
|
||||
clear: both;
|
||||
height: 16px;
|
||||
line-height: 16px;
|
||||
width: 288px;
|
||||
margin: 0 auto;
|
||||
}
|
||||
|
||||
.login-main .login-bottom .tip .login-tip {
|
||||
font-family: MicrosoftYaHei;
|
||||
font-size: 12px;
|
||||
font-weight: 400;
|
||||
font-stretch: normal;
|
||||
letter-spacing: 0;
|
||||
color: #9abcda;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.login-main .login-bottom .tip .forget-password {
|
||||
font-stretch: normal;
|
||||
letter-spacing: 0;
|
||||
color: #1391ff;
|
||||
text-decoration: none;
|
||||
position: absolute;
|
||||
right: 62px;
|
||||
}
|
||||
|
||||
.login-main .login-bottom .login-btn {
|
||||
width: 288px;
|
||||
height: 40px;
|
||||
background-color: #1E9FFF;
|
||||
border-radius: 16px;
|
||||
margin: 24px auto 0;
|
||||
text-align: center;
|
||||
line-height: 40px;
|
||||
color: #fff;
|
||||
font-size: 14px;
|
||||
letter-spacing: 0;
|
||||
cursor: pointer;
|
||||
border: none;
|
||||
}
|
||||
|
||||
.login-main .login-bottom .center .item .validateImg {
|
||||
position: absolute;
|
||||
right: 1px;
|
||||
cursor: pointer;
|
||||
height: 36px;
|
||||
border: 1px solid #e6e6e6;
|
||||
}
|
||||
|
||||
.footer {
|
||||
left: 0;
|
||||
bottom: 0;
|
||||
color: #fff;
|
||||
width: 100%;
|
||||
position: absolute;
|
||||
text-align: center;
|
||||
line-height: 30px;
|
||||
padding-bottom: 10px;
|
||||
text-shadow: #000 0.1em 0.1em 0.1em;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
.padding-5 {
|
||||
padding: 5px !important;
|
||||
}
|
||||
|
||||
.footer a, .footer span {
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
|
||||
@media screen and (max-width: 428px) {
|
||||
.login-main {
|
||||
width: 360px !important;
|
||||
}
|
||||
|
||||
.login-main .login-top {
|
||||
width: 360px !important;
|
||||
}
|
||||
|
||||
.login-main .login-bottom {
|
||||
width: 360px !important;
|
||||
}
|
||||
}
|
||||
540
public/static/admin/css/public.css
Normal file
@ -0,0 +1,540 @@
|
||||
@import url("../../plugs/layui-v2.x/css/layui.css");
|
||||
@import url("../../plugs/font-awesome-6.x/css/all.min.css");
|
||||
@import url("../css/color.css");
|
||||
@import url("../css/themes/index.css");
|
||||
@import url("../css/iconfont.css");
|
||||
|
||||
:root {
|
||||
--ea8-theme-main-color: #16b777;
|
||||
}
|
||||
|
||||
html,
|
||||
body {
|
||||
font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
|
||||
}
|
||||
|
||||
.ws-header-theme .layui-form-switch {
|
||||
vertical-align: baseline;
|
||||
}
|
||||
|
||||
.ws-header-theme .layui-form-onswitch {
|
||||
background: #333333;
|
||||
border: 1px solid rgba(255, 255, 255, .7);
|
||||
}
|
||||
|
||||
.layuimini-container {
|
||||
min-height: 250px;
|
||||
padding: 15px;
|
||||
margin: 0 auto;
|
||||
}
|
||||
|
||||
.layuimini-main {
|
||||
position: relative;
|
||||
padding: 15px 15px;
|
||||
background-color: #ffffff;
|
||||
border: 1px solid #f2f2f2;
|
||||
border-radius: 5px;
|
||||
}
|
||||
|
||||
.dark .layuimini-main {
|
||||
position: relative;
|
||||
padding: 15px 15px;
|
||||
background-color: var(--lay-color-bg-1);
|
||||
border: 1px solid #363636;
|
||||
border-radius: 5px;
|
||||
}
|
||||
|
||||
.layuimini-form .layui-form-item {
|
||||
position: relative;
|
||||
padding: 0 60px 0 0;
|
||||
line-height: 24px;
|
||||
}
|
||||
|
||||
.text-center {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.layuimini-form {
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
.easy-bg-white {
|
||||
background-color: #ffffff;
|
||||
height: auto;
|
||||
}
|
||||
|
||||
.hr-line {
|
||||
height: 1px;
|
||||
margin: 30px 0;
|
||||
border-top: 1px dashed #e7eaec;
|
||||
}
|
||||
|
||||
.dark .hr-line {
|
||||
color: #363636;
|
||||
height: 1px;
|
||||
margin: 30px 0;
|
||||
background-color: #363636;
|
||||
border-top: 1px dashed #363636;
|
||||
}
|
||||
|
||||
/**重写layui表格自适应*/
|
||||
.layuimini-container .layui-table-cell {
|
||||
height: auto;
|
||||
line-height: 30px;
|
||||
}
|
||||
|
||||
/**数据表格-搜索表单样式*/
|
||||
.layuimini-container .table-search-fieldset {
|
||||
margin: 0;
|
||||
border: 1px solid #e6e6e6;
|
||||
padding: 10px 20px 5px 20px;
|
||||
}
|
||||
|
||||
/**数据表格-搜索表单样式*/
|
||||
.dark .layuimini-container .table-search-fieldset {
|
||||
margin: 0;
|
||||
border: 1px solid #363636;
|
||||
padding: 10px 20px 5px 20px;
|
||||
color: #bdbdbd;
|
||||
}
|
||||
|
||||
.layuimini-container .table-search-fieldset input::-webkit-input-placeholder {
|
||||
color: #a9a9a9;
|
||||
}
|
||||
|
||||
.layuimini-container .table-search-fieldset input:-ms-input-placeholder {
|
||||
color: #a9a9a9;
|
||||
}
|
||||
|
||||
.layuimini-container .table-search-fieldset input::-ms-input-placeholder {
|
||||
color: #a9a9a9;
|
||||
}
|
||||
|
||||
/**图标选择器*/
|
||||
.layui-iconpicker-body.layui-iconpicker-body-page .hide {
|
||||
display: none;
|
||||
}
|
||||
|
||||
/**必填红点 */
|
||||
.layuimini-form > .layui-form-item .required:after {
|
||||
content: '*';
|
||||
color: red;
|
||||
position: absolute;
|
||||
margin-left: 4px;
|
||||
font-weight: bold;
|
||||
line-height: 1.8em;
|
||||
top: 6px;
|
||||
right: 5px;
|
||||
}
|
||||
|
||||
/*.layuimini-form>.layui-form-item>.layui-form-label {width:120px !important;}*/
|
||||
/*.layuimini-form>.layui-form-item>.layui-input-block {margin-left:150px !important;}*/
|
||||
.layuimini-form > .layui-form-item > .layui-input-block tip, .layuimini-form > .layui-form-item > .layui-inline tip {
|
||||
display: inline-block;
|
||||
margin-top: 10px;
|
||||
line-height: 15px;
|
||||
font-size: 10px;
|
||||
color: #a29c9c;
|
||||
}
|
||||
|
||||
.tableSearch-xmSelect xm-select {
|
||||
min-height: 30px !important;
|
||||
line-height: 30px !important;
|
||||
margin: 0 !important;
|
||||
background-color: var(--lay-color-fill-2);
|
||||
}
|
||||
|
||||
.elem-style-dark .tableSearch-xmSelect xm-select {
|
||||
background-color: var(--lay-color-fill-2);
|
||||
color: var(--lay-color-text-2);
|
||||
border-color: var(--lay-color-border-1) !important;
|
||||
}
|
||||
|
||||
/** 按钮背景色 */
|
||||
.layuimini-container .layuimini-btn-primary {
|
||||
color: #fff;
|
||||
background-color: #2c3e50;
|
||||
}
|
||||
|
||||
.layuimini-container .layui-btn-sm i {
|
||||
font-size: 12px !important;
|
||||
}
|
||||
|
||||
/**文件上传样式*/
|
||||
.layuimini-upload {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.layuimini-upload .layuimini-upload-btn {
|
||||
display: inline-block;
|
||||
position: absolute;
|
||||
right: 0px;
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
.dark .layuimini-upload .layuimini-upload-btn {
|
||||
display: inline-block;
|
||||
position: absolute;
|
||||
right: 0px;
|
||||
background-color: #363636;
|
||||
}
|
||||
|
||||
.layuimini-upload-show {
|
||||
margin-top: 10px;
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
.layuimini-upload-show li {
|
||||
position: relative;
|
||||
display: inline-block;
|
||||
padding: 5px 0 5px 0;
|
||||
padding-left: 10px;
|
||||
padding-right: 10px;
|
||||
border: 1px solid #e2e2e2;
|
||||
}
|
||||
|
||||
.layuimini-upload-show a img {
|
||||
height: 80px;
|
||||
object-fit: cover;
|
||||
}
|
||||
|
||||
.layuimini-upload-show .uploads-delete-tip {
|
||||
position: absolute;
|
||||
right: 10px;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
.bg-red {
|
||||
background-color: #e74c3c !important;
|
||||
}
|
||||
|
||||
.color-red {
|
||||
color: #e74c3c !important;
|
||||
}
|
||||
|
||||
.badge {
|
||||
display: inline-block;
|
||||
min-width: 10px;
|
||||
padding: 3px 7px;
|
||||
font-size: 11px;
|
||||
font-weight: bold;
|
||||
color: #fff;
|
||||
line-height: 1;
|
||||
vertical-align: middle;
|
||||
white-space: nowrap;
|
||||
text-align: center;
|
||||
background-color: #777777;
|
||||
border-radius: 10px;
|
||||
}
|
||||
|
||||
/**vue隐藏样式*/
|
||||
[v-cloak] {
|
||||
display: none;
|
||||
}
|
||||
|
||||
/**表格url样式*/
|
||||
.layuimini-table-url {
|
||||
color: #1497f3;
|
||||
border-radius: 3px;
|
||||
size: 8px !important;
|
||||
padding: 2px
|
||||
}
|
||||
|
||||
.layuimini-table-url:hover {
|
||||
color: #1497f3;
|
||||
border-radius: 3px;
|
||||
size: 8px !important;
|
||||
padding: 2px
|
||||
}
|
||||
|
||||
/**后台权限隐藏*/
|
||||
/*[auth] { display: none; }*/
|
||||
|
||||
.layui-form-label {
|
||||
width: 100px;
|
||||
}
|
||||
|
||||
.layui-input-block {
|
||||
margin-left: 130px;
|
||||
min-height: 36px
|
||||
}
|
||||
|
||||
/**
|
||||
table样式
|
||||
*/
|
||||
.layuimini-container .layui-laypage .layui-laypage-curr .layui-laypage-em {
|
||||
border-radius: 30px !important;
|
||||
background-color: #1e9fff !important;
|
||||
}
|
||||
|
||||
.layuimini-container .layui-table-tool {
|
||||
background-color: #ffffff;
|
||||
padding: 10px;
|
||||
padding-bottom: 15px !important;
|
||||
}
|
||||
|
||||
.layuimini-container .layui-table-box .layui-table-header th {
|
||||
font-weight: bold !important;
|
||||
}
|
||||
|
||||
/**
|
||||
搜索
|
||||
*/
|
||||
.form-search .layui-btn {
|
||||
height: 32px;
|
||||
line-height: 28px;
|
||||
font-size: 12px;
|
||||
padding: 0 10px;
|
||||
}
|
||||
|
||||
.form-search .layui-form-label {
|
||||
padding: 0 8px;
|
||||
height: 32px;
|
||||
line-height: 30px;
|
||||
}
|
||||
|
||||
.form-search .layui-input-inline {
|
||||
min-width: 170px;
|
||||
max-width: 300px;
|
||||
width: auto;
|
||||
}
|
||||
|
||||
.form-search .layui-input-inline input,
|
||||
.form-search .layui-input-inline select {
|
||||
width: 100%;
|
||||
height: 32px;
|
||||
padding: 2px 8px;
|
||||
line-height: 1em;
|
||||
}
|
||||
|
||||
.layui-form-select dl {
|
||||
border: 1px var(--ea8-theme-main-color) solid;
|
||||
border-top: none;
|
||||
z-index: 99999;
|
||||
padding: 0;
|
||||
border-radius: 0;
|
||||
}
|
||||
|
||||
.layui-form-select dl dd.layui-this {
|
||||
background-color: var(--ea8-theme-main-color);
|
||||
border-top: none;
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
.form-search .layui-form-select dl {
|
||||
top: 31px;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.layuimini-container .layui-btn-success {
|
||||
color: #fff;
|
||||
background-color: #4bb368;
|
||||
border-color: #4bb368;
|
||||
}
|
||||
|
||||
.layuimini-container .layui-btn-danger {
|
||||
color: #fff;
|
||||
background-color: #f56c6c;
|
||||
border-color: #f56c6c;
|
||||
}
|
||||
|
||||
.layuimini-container .layui-table-tool .layui-btn + .layui-btn {
|
||||
margin-left: 5px;
|
||||
}
|
||||
|
||||
.layuimini-container .layui-table-tool .layui-inline[lay-event] {
|
||||
width: 30px;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
padding: 0px;
|
||||
}
|
||||
|
||||
.layuimini-container .layui-table-tool .layui-inline .layui-icon {
|
||||
font-size: 16px;
|
||||
}
|
||||
|
||||
/**
|
||||
弹出层样式
|
||||
*/
|
||||
.layui-layer-easy .layui-layer-title {
|
||||
background: var(--lay-color-bg-5);
|
||||
color: #fff !important;
|
||||
border-bottom: none;
|
||||
}
|
||||
|
||||
.layui-layer-easy.layui-layer-border {
|
||||
border: none !important;
|
||||
box-shadow: 1px 1px 50px rgba(0, 0, 0, 0.3) !important;
|
||||
}
|
||||
|
||||
.layui-layer-easy.layui-layer-iframe {
|
||||
overflow: visible;
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-moves {
|
||||
-webkit-box-sizing: content-box;
|
||||
-moz-box-sizing: content-box;
|
||||
box-sizing: content-box;
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-btn {
|
||||
text-align: center !important;
|
||||
padding: 10px !important;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-btn a {
|
||||
background-color: #95a5a6;
|
||||
color: #fff !important;
|
||||
height: 31px;
|
||||
margin-top: 0;
|
||||
border: 1px solid #95a5a6;
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-btn .layui-layer-btn0 {
|
||||
background-color: #1E9FFF;
|
||||
border-color: #1E9FFF;
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-footer {
|
||||
padding: 8px 20px;
|
||||
background-color: #ecf0f1;
|
||||
height: auto;
|
||||
text-align: inherit !important;
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-setwin > a {
|
||||
background: none !important;
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-setwin > a cite {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-setwin > a:after {
|
||||
content: "\e625";
|
||||
font-family: iconfont;
|
||||
font-style: normal;
|
||||
font-weight: normal;
|
||||
text-decoration: inherit;
|
||||
position: absolute;
|
||||
font-size: 18px;
|
||||
color: #fff;
|
||||
margin: 0;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-setwin > a:hover {
|
||||
text-decoration: none !important;
|
||||
background: none !important;
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-setwin > a:focus {
|
||||
text-decoration: none !important;
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-setwin .layui-layer-min:before,
|
||||
.layui-layer-easy .layui-layer-setwin .layui-layer-min:after {
|
||||
border-color: #FFFFFF;
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-setwin .layui-layer-max:before,
|
||||
.layui-layer-easy .layui-layer-setwin .layui-layer-max:after {
|
||||
border-color: #FFFFFF;
|
||||
}
|
||||
|
||||
|
||||
.layui-layer-easy .layui-layer-setwin .layui-layer-close1,
|
||||
.layui-layer-easy .layui-layer-setwin .layui-layer-close1:hover {
|
||||
color: #FFFFFF;
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-setwin .layui-layer-close1:after,
|
||||
.layui-layer-easy .layui-layer-setwin .layui-layer-close1:hover:after {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-setwin .layui-layer-close2,
|
||||
.layui-layer-easy .layui-layer-setwin .layui-layer-close2:hover {
|
||||
color: #FFFFFF;
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-setwin .layui-layer-close2:after,
|
||||
.layui-layer-easy .layui-layer-setwin .layui-layer-close2:hover:after {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.layui-layer-content {
|
||||
clear: both;
|
||||
}
|
||||
|
||||
.layui-layer-easy-msg {
|
||||
min-width: 100px;
|
||||
}
|
||||
|
||||
.layui-layer-easy-tab .layui-layer-title .layui-this {
|
||||
color: #333;
|
||||
}
|
||||
|
||||
.layui-layer-easy-tab .layui-layer-content .layui-layer-tabmain {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
@media screen and (max-width: 1024px) {
|
||||
.layuimini-form .layui-form-item {
|
||||
position: relative;
|
||||
padding: 0 30px 0 0;
|
||||
line-height: 24px;
|
||||
}
|
||||
}
|
||||
|
||||
@media screen and (max-width: 768px) {
|
||||
.easyadmin-export-btn {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.form-search .layui-input-inline input, .form-search .layui-input-inline select {
|
||||
width: 100% !important;
|
||||
}
|
||||
|
||||
.tableSelect {
|
||||
margin: 5px !important;
|
||||
min-width: auto !important;
|
||||
left: 1px !important;
|
||||
right: 1px !important;
|
||||
}
|
||||
|
||||
.tableSelect img {
|
||||
object-fit: cover;
|
||||
height: 100%;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
资源加载锁
|
||||
*/
|
||||
.easy-load-lock {
|
||||
cursor: not-allowed;
|
||||
}
|
||||
|
||||
.line-limit-length {
|
||||
width: 200px;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
background: goldenrod;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.wangEditor_div {
|
||||
z-index: 99999;
|
||||
border: 1px solid var(--w-e-textarea-slight-border-color);
|
||||
}
|
||||
|
||||
.layui-input:focus, .layui-textarea:focus {
|
||||
border-color: var(--ea8-theme-main-color) !important;
|
||||
}
|
||||
|
||||
.layui-tabs-item {
|
||||
height: 100%;
|
||||
}
|
||||
802
public/static/admin/css/themes/_dark.scss
Normal file
@ -0,0 +1,802 @@
|
||||
// 通常用于背景色
|
||||
$black-color :rgb(2, 17, 20);
|
||||
// 通常用于字体颜色
|
||||
$main-color :rgb(126, 252, 246);
|
||||
// 通常用于边框
|
||||
$less-main-color:rgb(6, 216, 215);
|
||||
|
||||
$plus-main-color:rgb(0, 125, 124);
|
||||
|
||||
// 通常用于激活状态,通常跟背景色搭配
|
||||
$cover-color :rgba(62, 251, 251, 0.05);
|
||||
// 更强的激活状态,适合做选项操作时使用
|
||||
$active-color :rgba(62, 251, 251, 0.5);
|
||||
|
||||
|
||||
$red-color :rgb(255, 0, 0);
|
||||
$yellow-color:rgb(255, 255, 153);
|
||||
$green-color :rgb(0, 255, 0);
|
||||
|
||||
& {
|
||||
background-color: $black-color;
|
||||
color: $main-color;
|
||||
}
|
||||
|
||||
.layuimini-main {
|
||||
background-color: $black-color;
|
||||
}
|
||||
|
||||
.layuimini-container {
|
||||
background-color: $black-color;
|
||||
}
|
||||
|
||||
.layuimini-container .layui-table-tool {
|
||||
background-color: $black-color;
|
||||
}
|
||||
|
||||
$box-shape: polygon(0 0, 100% 0, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0 100%, 0 0);
|
||||
|
||||
.layui-btn {
|
||||
|
||||
&.layui-btn-lg {
|
||||
|
||||
padding-right: 25px;
|
||||
}
|
||||
|
||||
clip-path : $box-shape;
|
||||
padding-right : 10px;
|
||||
position : relative;
|
||||
background-color: transparent;
|
||||
border : 1px solid;
|
||||
color : rgb(126, 252, 246);
|
||||
text-shadow : rgb(126, 252, 246) 0px 0px 1px;
|
||||
background-color: rgb(126, 252, 246);
|
||||
|
||||
|
||||
&::before {
|
||||
content: '';
|
||||
display: block;
|
||||
position: absolute;
|
||||
z-index: -1;
|
||||
clip-path: $box-shape;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
left: -0.5px;
|
||||
top: -0.5px;
|
||||
background-color: $black-color;
|
||||
}
|
||||
|
||||
&:hover::after {
|
||||
content: '';
|
||||
display: block;
|
||||
position: absolute;
|
||||
z-index: -1;
|
||||
clip-path: $box-shape;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
left: -0.5px;
|
||||
top: -0.5px;
|
||||
background-color: rgba(126, 252, 246, 0.2);
|
||||
}
|
||||
|
||||
&.layui-btn-disabled {
|
||||
&::after {
|
||||
// todo:实现按钮禁用样式
|
||||
}
|
||||
}
|
||||
|
||||
&.layui-btn-success {
|
||||
text-shadow: rgb(0, 255, 0) 0px 0px 1px;
|
||||
color: rgb(0, 255, 0);
|
||||
background-color: rgba(0, 255, 0);
|
||||
border: unset;
|
||||
|
||||
&:hover::after {
|
||||
background-color: rgba(0, 255, 0, 0.2);
|
||||
}
|
||||
}
|
||||
|
||||
&.layui-btn-danger {
|
||||
text-shadow: rgb(255, 0, 0) 0px 0px 1px;
|
||||
color: rgb(255, 0, 0);
|
||||
background-color: rgb(255, 0, 0);
|
||||
border: unset;
|
||||
|
||||
&:hover::after {
|
||||
background-color: rgba(255, 0, 0, 0.2);
|
||||
}
|
||||
}
|
||||
|
||||
&.layuimini-btn-primary {
|
||||
text-shadow: rgb(255, 255, 153) 0px 0px 1px;
|
||||
color: rgb(255, 255, 153);
|
||||
background-color: rgb(255, 255, 153);
|
||||
border: unset;
|
||||
|
||||
&:hover::after {
|
||||
background-color: rgba(255, 255, 153, 0.2);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
&.layui-btn-primary {
|
||||
border: unset;
|
||||
}
|
||||
|
||||
&.layui-btn-normal {
|
||||
color: $black-color;
|
||||
background-color: $main-color;
|
||||
border: unset;
|
||||
|
||||
&::before {
|
||||
background-color: $main-color;
|
||||
}
|
||||
|
||||
&:hover::after {
|
||||
background-color: $main-color;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.layui-table {
|
||||
background: $black-color;
|
||||
color: $main-color;
|
||||
|
||||
|
||||
tr {
|
||||
background-color: $cover-color;
|
||||
}
|
||||
|
||||
td {
|
||||
border-color: $less-main-color;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
.layui-table-header {
|
||||
background-color: $black-color;
|
||||
}
|
||||
|
||||
.layuimini-container .layui-table-box {
|
||||
border-color: $less-main-color;
|
||||
}
|
||||
|
||||
.layuimini-container .layui-table-box .layui-table-header th {
|
||||
color: $main-color !important;
|
||||
}
|
||||
|
||||
.layui-table-tool .layui-inline[lay-event] {
|
||||
color: $main-color;
|
||||
border: none;
|
||||
position: relative;
|
||||
|
||||
&::after {
|
||||
border-color: $main-color;
|
||||
border-width: 1px;
|
||||
border-style: solid;
|
||||
clip-path: $box-shape;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
top: 0;
|
||||
width: calc(100% - 1px);
|
||||
height: calc(100% - 1px);
|
||||
content: '';
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
|
||||
.layui-table tbody tr:hover {
|
||||
background-color: rgba(126, 252, 246, 0.1);
|
||||
}
|
||||
|
||||
.layuimini-main {
|
||||
border-color: $less-main-color;
|
||||
}
|
||||
|
||||
.layui-table-header {
|
||||
border-color: $less-main-color;
|
||||
}
|
||||
|
||||
|
||||
|
||||
.color-content>ul>li>a>div>span:nth-child(2) {
|
||||
background-color: $black-color !important;
|
||||
}
|
||||
|
||||
.layuimini-color .elem-content li {
|
||||
clip-path: $box-shape;
|
||||
}
|
||||
|
||||
.layuimini-color .elem-content li.layui-this {
|
||||
background-color: $main-color;
|
||||
color: $black-color !important;
|
||||
border-color: $less-main-color;
|
||||
}
|
||||
|
||||
.layuimini-color .more-menu-item {
|
||||
color: $main-color;
|
||||
|
||||
&:hover {
|
||||
background-color: rgba(62, 251, 251, 0.05);
|
||||
}
|
||||
}
|
||||
|
||||
.layui-layout-admin .layui-header {
|
||||
background-color: $cover-color !important;
|
||||
}
|
||||
|
||||
.layuimini-tab .layui-tab-title {
|
||||
background-color: $cover-color !important;
|
||||
border-color: $less-main-color;
|
||||
|
||||
}
|
||||
|
||||
.layuimini-tab .layui-tab-title span {
|
||||
color: $active-color;
|
||||
}
|
||||
|
||||
.layui-header .layuimini-menu-header-pc.layui-nav .layui-nav-item a:hover,
|
||||
.layui-header .layuimini-header-menu.layuimini-pc-show.layui-nav .layui-this a {
|
||||
color: $black-color !important;
|
||||
}
|
||||
|
||||
.layui-layout-admin .layui-header .layui-nav .layui-nav-item a {
|
||||
color: $main-color !important;
|
||||
}
|
||||
|
||||
.layui-layout-admin .layui-header .layui-nav .layui-nav-item {
|
||||
background-color: $active-color;
|
||||
|
||||
}
|
||||
|
||||
|
||||
.layui-layout-admin .layui-header .layuimini-header-content>ul>.layui-nav-item.layui-this,
|
||||
.layuimini-tool i:hover {
|
||||
background-color: $main-color !important;
|
||||
}
|
||||
|
||||
.layuimini-tab .layui-tab-control>li {
|
||||
background-color: $black-color;
|
||||
border-color: $less-main-color;
|
||||
}
|
||||
|
||||
.layuimini-tab .layui-tab-title li {
|
||||
border-color: $less-main-color;
|
||||
}
|
||||
|
||||
.layui-flow-more a *,
|
||||
.layui-laypage input,
|
||||
.layui-table-view select[lay-ignore] {
|
||||
border-color: $less-main-color;
|
||||
background-color: $black-color;
|
||||
color: $main-color;
|
||||
}
|
||||
|
||||
.layui-laypage button,
|
||||
.layui-laypage input {
|
||||
border-color: $less-main-color;
|
||||
background-color: $black-color;
|
||||
color: $main-color;
|
||||
|
||||
}
|
||||
|
||||
.layuimini-container .layui-form-switch {
|
||||
border-color: $less-main-color !important;
|
||||
background-color: $black-color !important;
|
||||
|
||||
}
|
||||
|
||||
.layuimini-container .layui-form-onswitch {
|
||||
background-color: $main-color !important;
|
||||
}
|
||||
|
||||
.layuimini-container .layui-form-switch.layui-form-onswitch i {
|
||||
background-color: $black-color !important;
|
||||
}
|
||||
.layuimini-container .layui-laypage .layui-laypage-curr .layui-laypage-em {
|
||||
background-color: $main-color !important;
|
||||
}
|
||||
|
||||
.layui-laypage .layui-laypage-curr em {
|
||||
color: $black-color !important;
|
||||
}
|
||||
|
||||
.layuimini-tab .layui-tab-title .layui-this .layuimini-tab-active {
|
||||
background-color: $less-main-color;
|
||||
|
||||
}
|
||||
|
||||
.layui-table-view .layui-form-checkbox.layui-form-checked[lay-skin="primary"] i {
|
||||
border-color: $main-color;
|
||||
background-color: $main-color;
|
||||
color: $black-color;
|
||||
}
|
||||
|
||||
.layui-table-view .layui-form-checkbox[lay-skin="primary"] i {
|
||||
background-color: $cover-color;
|
||||
}
|
||||
|
||||
.layui-table-init {
|
||||
background-color: $black-color;
|
||||
}
|
||||
|
||||
.box-border-line {
|
||||
position: relative;
|
||||
border: 1px solid $less-main-color;
|
||||
border-width: 1px;
|
||||
$border-offset: 3px;
|
||||
|
||||
&::before {
|
||||
content: '';
|
||||
position: absolute;
|
||||
width: 50px;
|
||||
height: 20px;
|
||||
transition: all 0.2s;
|
||||
border: 1px solid $less-main-color;
|
||||
top: -$border-offset;
|
||||
left: -$border-offset;
|
||||
border-right: none;
|
||||
border-bottom: none;
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
&::after {
|
||||
content: "";
|
||||
position: absolute;
|
||||
width: 50px;
|
||||
height: 20px;
|
||||
transition: all 0.2s;
|
||||
border: 1px solid $less-main-color;
|
||||
bottom: -$border-offset;
|
||||
right: -$border-offset;
|
||||
border-left: none;
|
||||
border-top: none;
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
|
||||
&::after,
|
||||
&::before {
|
||||
width: calc(100% + $border-offset);
|
||||
height: calc(100% + $border-offset);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.table-search-fieldset {
|
||||
.layui-input-inline {
|
||||
margin-right: 0;
|
||||
}
|
||||
|
||||
|
||||
|
||||
.layui-form-item:not(:last-child) {
|
||||
margin-right: 10px;
|
||||
@extend .box-border-line;
|
||||
}
|
||||
|
||||
.layui-form-label {
|
||||
border: unset;
|
||||
}
|
||||
}
|
||||
|
||||
.layui-form-pane .layui-form-label {
|
||||
background-color: $cover-color;
|
||||
color: $main-color;
|
||||
}
|
||||
|
||||
.layuimini-container .table-search-fieldset {
|
||||
color: $main-color;
|
||||
border-color: $less-main-color;
|
||||
|
||||
}
|
||||
|
||||
.layui-form-select,
|
||||
.layui-form-autocomplete {
|
||||
dl {
|
||||
|
||||
color: $main-color;
|
||||
background-color: $black-color;
|
||||
border-color: $less-main-color;
|
||||
|
||||
dd {
|
||||
&.layui-this {
|
||||
background-color: $main-color !important;
|
||||
color: $black-color;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
background-color: $less-main-color !important;
|
||||
color: $black-color;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.layui-iconpicker-item,
|
||||
.layui-iconpicker-item:hover {
|
||||
border-color: $less-main-color !important;
|
||||
color: $black-color;
|
||||
|
||||
.layui-iconpicker-icon:hover {
|
||||
border-color: $less-main-color !important;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
.layui-nav-child {
|
||||
background-color: $black-color;
|
||||
color: $main-color;
|
||||
}
|
||||
|
||||
.layui-layout-admin .layui-header .layui-nav .layui-nav-item .layui-nav-child a {
|
||||
color: $main-color !important;
|
||||
}
|
||||
|
||||
.layui-badge,
|
||||
.layui-badge-dot,
|
||||
.layui-badge-rim {
|
||||
background-color: $main-color;
|
||||
}
|
||||
|
||||
.layui-nav .layui-nav-child a:hover {
|
||||
background-color: $active-color;
|
||||
}
|
||||
|
||||
.layui-table-tool-panel {
|
||||
background-color: $black-color;
|
||||
}
|
||||
|
||||
.layui-form-checkbox[lay-skin="primary"] span {
|
||||
color: $main-color;
|
||||
}
|
||||
|
||||
.layui-table-tool-panel li:hover {
|
||||
background-color: $active-color;
|
||||
}
|
||||
|
||||
.layui-side.layui-bg-black,
|
||||
.layui-side.layui-bg-black>.layuimini-menu-left>ul,
|
||||
.layuimini-menu-left-zoom>ul {
|
||||
background-color: $black-color !important;
|
||||
|
||||
}
|
||||
|
||||
.layui-side {
|
||||
border-right: 1px solid $main-color;
|
||||
}
|
||||
|
||||
.layui-bg-blue {
|
||||
background-color: #0000ff !important;
|
||||
}
|
||||
|
||||
.layui-bg-orange {
|
||||
background-color: $yellow-color !important;
|
||||
color: $black-color !important;
|
||||
}
|
||||
|
||||
.layui-bg-green {
|
||||
background-color: $green-color !important;
|
||||
color: $black-color !important;
|
||||
}
|
||||
|
||||
.layui-table-hover {
|
||||
background-color: $cover-color;
|
||||
}
|
||||
|
||||
.layui-table-grid-down {
|
||||
background-color: $black-color;
|
||||
color: $main-color;
|
||||
border-color: unset;
|
||||
}
|
||||
|
||||
.layui-table-tips-main {
|
||||
background-color: $main-color;
|
||||
color: $black-color;
|
||||
}
|
||||
|
||||
.layui-layout-admin .layui-header .layuimini-tool i {
|
||||
color: $main-color;
|
||||
}
|
||||
|
||||
.color-red {
|
||||
color: $red-color !important;
|
||||
}
|
||||
|
||||
.layuimini-tab .layui-tab-title .layui-this span {
|
||||
color: $main-color;
|
||||
}
|
||||
|
||||
.layui-card {
|
||||
|
||||
background-color: $cover-color;
|
||||
border-radius: 0;
|
||||
|
||||
@extend .box-border-line;
|
||||
|
||||
.layui-card-header {
|
||||
color: $main-color;
|
||||
}
|
||||
}
|
||||
|
||||
.layui-text {
|
||||
color: $main-color;
|
||||
}
|
||||
|
||||
|
||||
.layuimini-qiuck-module {
|
||||
cursor: pointer;
|
||||
|
||||
a i {
|
||||
background-color: $cover-color;
|
||||
color: $active-color;
|
||||
}
|
||||
|
||||
a cite {
|
||||
color: $active-color;
|
||||
}
|
||||
|
||||
|
||||
&:hover {
|
||||
a i {
|
||||
background-color: $active-color;
|
||||
color: $main-color;
|
||||
}
|
||||
|
||||
a cite {
|
||||
color: $main-color;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
.layui-bg-number {
|
||||
background-color: $cover-color;
|
||||
}
|
||||
|
||||
.layui-input,
|
||||
.layui-select,
|
||||
.layui-textarea,
|
||||
.city-picker-span,
|
||||
.main-input {
|
||||
background-color: $cover-color;
|
||||
color: $main-color;
|
||||
}
|
||||
|
||||
.city-picker-span>.title>span {
|
||||
color: $main-color;
|
||||
|
||||
&:hover {
|
||||
background-color: $main-color;
|
||||
color: $black-color;
|
||||
}
|
||||
}
|
||||
|
||||
.layui-form-radio:hover *,
|
||||
.layui-form-radioed,
|
||||
.layui-form-radioed>i {
|
||||
color: $main-color;
|
||||
}
|
||||
|
||||
.layui-form-checked[lay-skin="primary"] i {
|
||||
border-color: $main-color !important;
|
||||
background-color: $main-color;
|
||||
color: $black-color;
|
||||
}
|
||||
|
||||
.layui-input:focus,
|
||||
.layui-textarea:focus {
|
||||
border-color: $main-color !important;
|
||||
}
|
||||
|
||||
.layui-input:hover,
|
||||
.layui-textarea:hover {
|
||||
border-color: $main-color !important;
|
||||
|
||||
}
|
||||
|
||||
.layui-badge-rim,
|
||||
.layui-border,
|
||||
.layui-colla-content,
|
||||
.layui-colla-item,
|
||||
.layui-collapse,
|
||||
.layui-elem-field,
|
||||
.layui-form-pane .layui-form-item[pane],
|
||||
.layui-form-pane .layui-form-label,
|
||||
.layui-input,
|
||||
.layui-layedit,
|
||||
.layui-layedit-tool,
|
||||
.layui-panel,
|
||||
.layui-quote-nm,
|
||||
.layui-select,
|
||||
.layui-tab-bar,
|
||||
.layui-tab-card,
|
||||
.layui-tab-title,
|
||||
.layui-tab-title .layui-this::after,
|
||||
.layui-textarea {
|
||||
border-color: $main-color !important;
|
||||
}
|
||||
|
||||
.form-search .layui-input-inline input,
|
||||
.form-search .layui-input-inline select {
|
||||
border-width: 0 0 0 1px;
|
||||
}
|
||||
|
||||
.layuimini-tab .layui-tab-tool .layui-nav-child {
|
||||
border-color: $main-color;
|
||||
}
|
||||
|
||||
.layui-nav .layui-nav-child a {
|
||||
color: $main-color;
|
||||
}
|
||||
|
||||
.layui-form-item {
|
||||
margin-bottom: 12px;
|
||||
}
|
||||
|
||||
.layuimini-upload .layuimini-upload-btn {
|
||||
background-color: $black-color;
|
||||
}
|
||||
|
||||
.layui-layer {
|
||||
border: 1px solid $main-color;
|
||||
background-color: $black-color;
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-title {
|
||||
background-color: $plus-main-color !important;
|
||||
color: $main-color !important;
|
||||
}
|
||||
|
||||
|
||||
|
||||
.layui-table td,
|
||||
.layui-table th,
|
||||
.layui-table-col-set,
|
||||
.layui-table-fixed-r,
|
||||
.layui-table-grid-down,
|
||||
.layui-table-header,
|
||||
.layui-table-page,
|
||||
.layui-table-tips-main,
|
||||
.layui-table-tool,
|
||||
.layui-table-total,
|
||||
.layui-table-view,
|
||||
.layui-table[lay-skin="line"],
|
||||
.layui-table[lay-skin="row"] {
|
||||
border-color: $less-main-color;
|
||||
}
|
||||
|
||||
.layui-table tbody tr:hover,
|
||||
.layui-table thead tr,
|
||||
.layui-table-click,
|
||||
.layui-table-header,
|
||||
.layui-table-hover,
|
||||
.layui-table-mend,
|
||||
.layui-table-patch,
|
||||
.layui-table-tool,
|
||||
.layui-table-total,
|
||||
.layui-table-total tr {
|
||||
background-color: $black-color;
|
||||
}
|
||||
|
||||
.hr-line {
|
||||
color: $main-color;
|
||||
border-color: $less-main-color;
|
||||
background-color: $main-color;
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-btn {
|
||||
background-color: $black-color;
|
||||
border-top: 1px solid $less-main-color;
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-btn .layui-layer-btn0 {
|
||||
background-color: $main-color;
|
||||
border-color: $less-main-color;
|
||||
color: $main-color !important;
|
||||
clip-path: $box-shape;
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-btn a {
|
||||
@extend .layui-btn
|
||||
}
|
||||
|
||||
.layui-layer-shade {
|
||||
background-color: #fff !important;
|
||||
}
|
||||
|
||||
.layuimini-menu-left {
|
||||
.layui-nav-tree .layui-nav-item {
|
||||
|
||||
margin: 5px;
|
||||
width: calc(100% - 10px);
|
||||
}
|
||||
|
||||
.layui-nav .layui-nav-item {
|
||||
clip-path: $box-shape;
|
||||
color: $main-color;
|
||||
background-color: $active-color;
|
||||
|
||||
&.layui-this a {
|
||||
background-color: $main-color !important;
|
||||
color: $black-color !important;
|
||||
}
|
||||
|
||||
&.layui-this {
|
||||
background-color: $main-color !important;
|
||||
color: $black-color !important;
|
||||
|
||||
span {
|
||||
background-color: $main-color !important;
|
||||
color: $black-color !important;
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.layui-nav .layui-nav-item a:hover {
|
||||
background-color: $active-color !important;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
.layuimini-menu-left .layui-nav .layui-nav-item a,
|
||||
.layuimini-menu-left-zoom.layui-nav .layui-nav-item a {
|
||||
color: $main-color !important;
|
||||
}
|
||||
|
||||
.layuimini-menu-left .layui-nav-item a span {
|
||||
color: $main-color !important;
|
||||
|
||||
}
|
||||
|
||||
.layuimini-menu-left .layui-nav-item:hover a span {
|
||||
color: $black-color !important;
|
||||
|
||||
}
|
||||
|
||||
.layui-layout-admin .layuimini-logo {
|
||||
background-color: $black-color !important;
|
||||
|
||||
}
|
||||
|
||||
.layuimini-menu-left .layui-nav-itemed>.layui-nav-child {
|
||||
background-color: $black-color !important;
|
||||
}
|
||||
|
||||
.layuimini-menu-left .layui-nav-tree .layui-this,
|
||||
.layuimini-menu-left .layui-nav-tree .layui-this>a,
|
||||
.layuimini-menu-left .layui-nav-tree .layui-nav-child dd.layui-this,
|
||||
.layuimini-menu-left .layui-nav-tree .layui-nav-child dd.layui-this a,
|
||||
.layuimini-menu-left-zoom.layui-nav-tree .layui-this,
|
||||
.layuimini-menu-left-zoom.layui-nav-tree .layui-this>a,
|
||||
.layuimini-menu-left-zoom.layui-nav-tree .layui-nav-child dd.layui-this,
|
||||
.layuimini-menu-left-zoom.layui-nav-tree .layui-nav-child dd.layui-this a {
|
||||
background-color: $main-color !important;
|
||||
color: $black-color !important;
|
||||
|
||||
.layui-left-nav {
|
||||
color: $black-color !important;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
.layui-iconpicker-icon {
|
||||
border-color: $less-main-color !important;
|
||||
background-color: $less-main-color !important;
|
||||
}
|
||||
|
||||
.layui-iconpicker .layui-anim {
|
||||
background-color: $black-color;
|
||||
}
|
||||
|
||||
.layui-iconpicker .layui-iconpicker-list {
|
||||
background-color: $black-color;
|
||||
}
|
||||
|
||||
.layui-header .layui-nav .layui-nav-child dd.layui-this a,
|
||||
.layui-header .layui-nav-child dd.layui-this,
|
||||
.layui-layout-admin .layui-header .layui-nav .layui-nav-item .layui-nav-child .layui-this a {
|
||||
background-color: $active-color !important;
|
||||
}
|
||||
81
public/static/admin/css/themes/_demo.scss
Normal file
@ -0,0 +1,81 @@
|
||||
.layui-btn {
|
||||
color : #808185 !important;
|
||||
background-color: #cde7ff !important;
|
||||
border : 1px solid #d3dde6 !important;
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-title {
|
||||
background-color: rgb(215, 215, 215) !important;
|
||||
color : #6C6E71 !important;
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-setwin>a::after {
|
||||
color: #6C6E71 !important;
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-btn .layui-layer-btn0 {
|
||||
color : #808185 !important;
|
||||
background-color: #cde7ff !important;
|
||||
border : 1px solid #d3dde6 !important;
|
||||
}
|
||||
|
||||
.layuimini-tab .layui-tab-title .layuimini-tab-active {
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
.layuimini-tab .layui-tab-title li {
|
||||
padding : 0 5px !important;
|
||||
font-size : 12px;
|
||||
border-width: 1px 1px 1px 0 !important;
|
||||
border-style: solid !important;
|
||||
|
||||
}
|
||||
|
||||
.layuimini-tab .layui-tab-title li.layui-this {
|
||||
color : #fff !important;
|
||||
border-color: rgba(0, 0, 255, 1) !important;
|
||||
background : rgba(90, 173, 255, 1) !important;
|
||||
}
|
||||
|
||||
.layuimini-tab .layui-tab-title .layui-this span {
|
||||
color: #fff !important;
|
||||
}
|
||||
|
||||
.layuimini-tab>.layui-tab-title li,
|
||||
.layuimini-tab>.close-box li {
|
||||
line-height: 27px !important;
|
||||
}
|
||||
|
||||
.layuimini-tab>.layui-tab-title,
|
||||
.layuimini-tab>.close-box {
|
||||
height: 28px !important;
|
||||
}
|
||||
|
||||
.layuimini-tab .layui-tab-control>li {
|
||||
height : 28px !important;
|
||||
line-height: 28px !important;
|
||||
}
|
||||
|
||||
.layuimini-container .layui-laypage .layui-laypage-curr .layui-laypage-em {
|
||||
background-color: #6C6E71 !important;
|
||||
}
|
||||
|
||||
.layuimini-container .layui-form-onswitch {
|
||||
background-color: #cde7ff !important;
|
||||
border-color : #cde7ff !important;
|
||||
}
|
||||
|
||||
.layuimini-container .layui-form-switch {
|
||||
|
||||
background-color: #6C6E71;
|
||||
border-color : #6C6E71;
|
||||
}
|
||||
|
||||
.layui-table-tool .layui-inline[lay-event] {
|
||||
border-color: transparent;
|
||||
}
|
||||
|
||||
.layui-form-checked[lay-skin="primary"] i {
|
||||
border-color : #cde7ff !important;
|
||||
background-color: #cde7ff !important;
|
||||
}
|
||||
708
public/static/admin/css/themes/_gtk.scss
Normal file
@ -0,0 +1,708 @@
|
||||
& {
|
||||
background-color: #f6f5f4;
|
||||
color : #2e3436;
|
||||
}
|
||||
|
||||
.layuimini-container {}
|
||||
|
||||
.layuimini-main {
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.layuimini-container .layui-table-box .layui-table-header th {
|
||||
color : #979a9b !important;
|
||||
font-weight : 700 !important;
|
||||
font-weight : bold;
|
||||
text-shadow : none;
|
||||
border-color : #d7d2ce;
|
||||
border-bottom: 1px solid;
|
||||
|
||||
&:not(:last-child) {
|
||||
|
||||
border-right: 1px solid #d7d2ce;
|
||||
}
|
||||
}
|
||||
|
||||
.layui-table-view .layui-table td {
|
||||
|
||||
border-bottom: unset;
|
||||
|
||||
&:not(:last-child) {
|
||||
border-right: 1px solid #d7d2ce;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
.layui-table {
|
||||
color : #2e3436;
|
||||
background: #f6f5f4;
|
||||
}
|
||||
|
||||
.layui-table-view .layui-table[lay-size="sm"] .layui-table-cell {
|
||||
line-height: 30px;
|
||||
}
|
||||
|
||||
.layui-table tbody tr:hover,
|
||||
.layui-table thead tr,
|
||||
.layui-table-click,
|
||||
.layui-table-header,
|
||||
.layui-table-hover,
|
||||
.layui-table-mend,
|
||||
.layui-table-patch,
|
||||
.layui-table-tool,
|
||||
.layui-table-total,
|
||||
.layui-table-total tr {
|
||||
background-color: unset;
|
||||
}
|
||||
|
||||
.layui-table-cell {
|
||||
padding: 0 4px;
|
||||
}
|
||||
|
||||
.layui-table img {
|
||||
height: 25px !important;
|
||||
width : auto !important;
|
||||
}
|
||||
|
||||
.layui-btn {
|
||||
position : relative;
|
||||
outline : none;
|
||||
overflow : visible;
|
||||
line-height : 28px;
|
||||
border-radius : 5px;
|
||||
transition : all .15s cubic-bezier(.25, .46, .45, .94);
|
||||
padding : 4px 9px;
|
||||
user-select : none;
|
||||
color : #2e3436;
|
||||
outline-color : rgba(53, 132, 228, .5);
|
||||
border : 1px solid #cdc7c2;
|
||||
border-bottom-color: rgb(205, 199, 194);
|
||||
border-bottom-color: #bfb8b1;
|
||||
background-color : #f6f5f4;
|
||||
box-shadow : inset 0 1px #fff, 0 1px 2px rgba(0, 0, 0, .07);
|
||||
|
||||
&::before {
|
||||
content : ' ';
|
||||
position : absolute;
|
||||
pointer-events: none;
|
||||
width : 100%;
|
||||
height : 100%;
|
||||
top : 0px;
|
||||
left : 0px;
|
||||
background : linear-gradient(to top, rgba(0, 0, 0, 0.03), transparent);
|
||||
transition : all 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
|
||||
}
|
||||
|
||||
&::after {
|
||||
content : '';
|
||||
position : absolute;
|
||||
pointer-events: none;
|
||||
z-index : 2;
|
||||
display : inline-block;
|
||||
border : 2px solid transparent;
|
||||
border-radius : inherit;
|
||||
transition : all 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
|
||||
top : -4px;
|
||||
left : -4px;
|
||||
width : calc(100% - -4px);
|
||||
height : calc(100% - -4px);
|
||||
}
|
||||
|
||||
&.layui-btn-normal {
|
||||
color : #fff;
|
||||
border-color : #1b6acb #1b6acb #15539e;
|
||||
background-color: #3c88e5;
|
||||
box-shadow : inset 0 1px #3181e3, 0 1px 2px rgba(0, 0, 0, .07);
|
||||
}
|
||||
|
||||
&.layui-btn-danger {
|
||||
color : #fff;
|
||||
border-color : #b2161d #b2161d #851015;
|
||||
background-color: #e41f28;
|
||||
box-shadow : inset 0 1px #db1a23, 0 1px 2px rgba(0, 0, 0, .07);
|
||||
}
|
||||
|
||||
&.layui-btn-sm {
|
||||
line-height: 20px;
|
||||
}
|
||||
|
||||
&.layui-btn-xs {
|
||||
line-height: 12px
|
||||
}
|
||||
}
|
||||
|
||||
.layuimini-container .layui-table-tool .layui-inline[lay-event] {
|
||||
@extend .layui-btn;
|
||||
|
||||
line-height : 32px;
|
||||
min-width : 32px;
|
||||
min-height : 32px;
|
||||
padding : 0;
|
||||
border-radius: 9999px;
|
||||
}
|
||||
|
||||
.layui-laydate .layui-this {
|
||||
background-color: #3584e4 !important;
|
||||
|
||||
}
|
||||
|
||||
.layui-laydate-content td,
|
||||
.layui-laydate-content th {
|
||||
|
||||
width : 36px;
|
||||
height : 36px;
|
||||
border-radius: 100%;
|
||||
}
|
||||
|
||||
.laydate-footer-btns span {
|
||||
@extend .layui-btn;
|
||||
|
||||
line-height: 16px;
|
||||
|
||||
&:not(:last-child) {
|
||||
border-right-style : none;
|
||||
border-top-right-radius : 0;
|
||||
border-bottom-right-radius: 0;
|
||||
}
|
||||
|
||||
&:not(:first-child) {
|
||||
border-top-left-radius : 0;
|
||||
border-bottom-left-radius: 0;
|
||||
}
|
||||
}
|
||||
|
||||
.layui-laydate-footer span {
|
||||
@extend .layui-btn;
|
||||
line-height: 16px;
|
||||
}
|
||||
|
||||
.layui-laydate-footer span.layui-laydate-preview {
|
||||
line-height: 22px;
|
||||
}
|
||||
|
||||
.layui-form-checked[lay-skin="primary"] i {
|
||||
border-color : #185fb4 !important;
|
||||
background-color: #5094e8;
|
||||
background-image: linear-gradient(0deg, #3987e5, #5094e8);
|
||||
}
|
||||
|
||||
.layui-form-checkbox[lay-skin="primary"]:hover i {
|
||||
border-color : #185fb4;
|
||||
background-image: linear-gradient(0deg, #5094e8, #6ba5eb);
|
||||
}
|
||||
|
||||
.layui-table-view .layui-form-checkbox[lay-skin="primary"] i {
|
||||
border-radius: 3px;
|
||||
}
|
||||
|
||||
.layui-table-view .layui-form-checkbox i {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.layui-layer-title {
|
||||
padding : 0 6px;
|
||||
min-height : 46px;
|
||||
border : 1px solid #bfb8b1;
|
||||
border-top-left-radius : 8px;
|
||||
border-top-right-radius: 8px;
|
||||
background : #f1f0ee linear-gradient(0deg, #dfdcd8, #f4f2f1) !important;
|
||||
color : #2e3436 !important;
|
||||
padding-left : 12px;
|
||||
padding-right : 12px;
|
||||
font-weight : bold;
|
||||
}
|
||||
|
||||
.layui-layer {
|
||||
background-color: #f6f5f4;
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-title~.layui-layer-setwin>a {
|
||||
position : relative;
|
||||
outline : none;
|
||||
overflow : visible;
|
||||
border-radius: 5px;
|
||||
transition : all .15s cubic-bezier(.25, .46, .45, .94);
|
||||
user-select : none;
|
||||
|
||||
outline-color : rgba(53, 132, 228, .5);
|
||||
border : 1px solid #cdc7c2;
|
||||
border-bottom-color: rgb(205, 199, 194);
|
||||
border-bottom-color: #bfb8b1;
|
||||
background-color : #f6f5f4;
|
||||
box-shadow : inset 0 1px #fff, 0 1px 2px rgba(0, 0, 0, .07);
|
||||
height : 20px;
|
||||
line-height : 20px;
|
||||
width : 20px;
|
||||
text-align : center;
|
||||
display : inline-flex;
|
||||
align-items : center;
|
||||
justify-content : center;
|
||||
|
||||
&::after {
|
||||
color: #2e3436 !important;
|
||||
}
|
||||
}
|
||||
|
||||
.layui-layer-setwin {
|
||||
display : flex;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.layuimini-container .layui-form-switch.layui-form-onswitch {
|
||||
color : #ffffff;
|
||||
border-color : #185fb4;
|
||||
background-color: #3584e4;
|
||||
text-shadow : 0 1px rgba(53, 132, 228, 0.5), 0 0 2px rgba(255, 255, 255, 0.6);
|
||||
}
|
||||
|
||||
.layuimini-container .layui-form-switch {
|
||||
|
||||
border : 1px solid #cdc7c2;
|
||||
border-radius : 20px;
|
||||
color : rgba(46, 52, 54, 0.2);
|
||||
background-color: #e1dedb;
|
||||
text-shadow : 0 1px rgba(0, 0, 0, 0.1);
|
||||
transition : all 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
|
||||
}
|
||||
|
||||
.layui-form-switch {
|
||||
height: 20px;
|
||||
width : 40px;
|
||||
}
|
||||
|
||||
.layui-form-switch {
|
||||
|
||||
padding : 0;
|
||||
line-height: 20px;
|
||||
}
|
||||
|
||||
.layui-form-switch.layui-form-onswitch i {
|
||||
top : 0;
|
||||
height : 20px;
|
||||
width : 20px;
|
||||
margin-left: -20px;
|
||||
|
||||
|
||||
}
|
||||
|
||||
.layui-form-switch i {
|
||||
top : 0;
|
||||
height : 20px;
|
||||
width : 20px;
|
||||
margin-left : -5px;
|
||||
border-radius : 50%;
|
||||
transition : all 150ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
|
||||
color : #2e3436;
|
||||
outline-color : rgba(53, 132, 228, 0.5);
|
||||
border-color : #cdc7c2;
|
||||
border-bottom-color: #bfb8b1;
|
||||
background-color : #f6f5f4;
|
||||
box-shadow : inset 0 1px white, 0 1px rgba(0, 0, 0, 0.1), 0 1px 2px rgba(0, 0, 0, 0.07);
|
||||
}
|
||||
|
||||
.layuimini-main {
|
||||
background-color: unset;
|
||||
}
|
||||
|
||||
.layui-tab-title li {
|
||||
transition : none;
|
||||
padding : 3px 12px;
|
||||
min-height : 30px;
|
||||
min-width : 65px;
|
||||
display : flex;
|
||||
justify-content : center;
|
||||
align-items : center;
|
||||
white-space : nowrap;
|
||||
color : #2e3436;
|
||||
font-weight : normal;
|
||||
user-select : none;
|
||||
border : 0;
|
||||
border-top-style : none;
|
||||
border-right-style : none;
|
||||
border-bottom-style: none;
|
||||
border-left-style : none;
|
||||
|
||||
|
||||
|
||||
&:hover {
|
||||
box-shadow : inset 0 -3px #c8c2bc;
|
||||
background-color: #edebe9;
|
||||
}
|
||||
|
||||
&.layui-this {
|
||||
box-shadow : inset 0 -3px #3584e4;
|
||||
background-color: #f1f0ee;
|
||||
}
|
||||
}
|
||||
|
||||
.layui-tab-title {
|
||||
display : flex;
|
||||
align-items : center;
|
||||
flex-direction: row;
|
||||
padding-left : 4px;
|
||||
padding-right : 4px;
|
||||
}
|
||||
|
||||
.layuimini-tab>.layui-tab-title li,
|
||||
.layuimini-tab>.close-box li {
|
||||
line-height: 20px !important;
|
||||
}
|
||||
|
||||
.layuimini-tab .layui-tab-title .layui-this .layuimini-tab-active {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.layuimini-tab .layui-tab-title .layui-this span {
|
||||
color: #2e3436 !important
|
||||
}
|
||||
|
||||
.layuimini-tab .layui-tab-title span {
|
||||
color: #2e3436 !important
|
||||
}
|
||||
|
||||
.layuimini-tab .layui-tab-title .layuimini-tab-active {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.layuimini-tab .layui-tab-title {
|
||||
background-color: #e1dedb;
|
||||
border-color : #cdc7c2;
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-btn {
|
||||
background-color: #f2f2f2;
|
||||
}
|
||||
|
||||
.layui-layer-dialog .layui-layer-content {
|
||||
background-color: #f2f2f2;
|
||||
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-btn a {
|
||||
position : relative;
|
||||
outline : none;
|
||||
overflow : visible;
|
||||
line-height : 22px;
|
||||
height : 22px;
|
||||
border-radius : 5px;
|
||||
transition : all .15s cubic-bezier(.25, .46, .45, .94);
|
||||
padding : 4px 9px;
|
||||
user-select : none;
|
||||
color : #2e3436 !important;
|
||||
outline-color : rgba(53, 132, 228, .5);
|
||||
border : 1px solid #cdc7c2;
|
||||
border-bottom-color: rgb(205, 199, 194);
|
||||
border-bottom-color: #bfb8b1;
|
||||
background-color : #f6f5f4;
|
||||
box-shadow : inset 0 1px #fff, 0 1px 2px rgba(0, 0, 0, .07);
|
||||
|
||||
&::before {
|
||||
content : ' ';
|
||||
position : absolute;
|
||||
pointer-events: none;
|
||||
width : 100%;
|
||||
height : 100%;
|
||||
top : 0px;
|
||||
left : 0px;
|
||||
background : linear-gradient(to top, rgba(0, 0, 0, 0.03), transparent);
|
||||
transition : all 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
|
||||
}
|
||||
|
||||
&::after {
|
||||
content : '';
|
||||
position : absolute;
|
||||
pointer-events: none;
|
||||
z-index : 2;
|
||||
display : inline-block;
|
||||
border : 2px solid transparent;
|
||||
border-radius : inherit;
|
||||
transition : all 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
|
||||
top : -4px;
|
||||
left : -4px;
|
||||
width : calc(100% - -4px);
|
||||
height : calc(100% - -4px);
|
||||
}
|
||||
|
||||
|
||||
&.layui-layer-btn0 {
|
||||
color : #fff !important;
|
||||
border-color : #1b6acb #1b6acb #15539e;
|
||||
background-color: #3c88e5;
|
||||
box-shadow : inset 0 1px #3181e3, 0 1px 2px rgba(0, 0, 0, .07);
|
||||
}
|
||||
}
|
||||
|
||||
.layui-tab-brief {
|
||||
|
||||
&>.layui-tab-title {
|
||||
|
||||
li {
|
||||
@extend .layui-btn;
|
||||
|
||||
|
||||
&:not(:last-child) {
|
||||
border-right-style : none;
|
||||
border-top-right-radius : 0;
|
||||
border-bottom-right-radius: 0;
|
||||
}
|
||||
|
||||
&:not(:first-child) {
|
||||
border-top-left-radius : 0;
|
||||
border-bottom-left-radius: 0;
|
||||
}
|
||||
|
||||
&.layui-this {
|
||||
color : unset;
|
||||
color : #2e3436;
|
||||
border-color : #cdc7c2;
|
||||
background-color: #d6d1cd;
|
||||
box-shadow : inset 0 1px rgba(255, 255, 255, 0);
|
||||
|
||||
&::after {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
&:hover {
|
||||
box-shadow : unset;
|
||||
background-color: #edebe9;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
.layui-form-radio:hover *,
|
||||
.layui-form-radioed,
|
||||
.layui-form-radioed>i {
|
||||
color: #5094e8;
|
||||
}
|
||||
|
||||
.layui-card {
|
||||
.layui-card-header {
|
||||
padding : 0 6px;
|
||||
min-height : 46px;
|
||||
border-width : 1px;
|
||||
border-style : solid;
|
||||
border-color : #bfb8b1;
|
||||
border-top-left-radius : 8px;
|
||||
border-top-right-radius: 8px;
|
||||
background : #f1f0ee linear-gradient(to top, #dfdcd8, #f4f2f1);
|
||||
box-shadow : inset 0 1px rgba(255, 255, 255, 0.8), inset 0 -2px 2px rgba(0, 0, 0, 0.02);
|
||||
|
||||
.icon {
|
||||
color: #979a9b !important;
|
||||
}
|
||||
}
|
||||
|
||||
.layui-card-body {
|
||||
background-color: #f6f5f4;
|
||||
border : 1px solid #cdc7c2;
|
||||
}
|
||||
}
|
||||
|
||||
.layui-btn,
|
||||
.layui-input,
|
||||
.layui-select,
|
||||
.layui-textarea,
|
||||
.layui-upload-button,
|
||||
.city-picker-span {
|
||||
border-radius: 5px;
|
||||
border : 1px solid #cdc7c2;
|
||||
}
|
||||
|
||||
.layui-side.layui-bg-black,
|
||||
.layui-side.layui-bg-black>.layuimini-menu-left>ul,
|
||||
.layuimini-menu-left-zoom>ul {
|
||||
background-color: #f6f5f4 !important;
|
||||
}
|
||||
|
||||
.layuimini-menu-left {
|
||||
background-color: #fbfafa;
|
||||
border-right : 1px solid #cdc7c2;
|
||||
|
||||
.layui-nav {
|
||||
|
||||
li {
|
||||
&:not(:first-child) {
|
||||
border-top: 1px solid #cdc7c2;
|
||||
}
|
||||
|
||||
|
||||
&.layui-this {
|
||||
a {
|
||||
background-color: #347cd3 !important;
|
||||
color : #fff !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
.layuimini-menu-left .layui-nav .layui-this a,
|
||||
|
||||
.layuimini-menu-left-zoom.layui-nav .layui-this a {
|
||||
color: #2e3436 !important;
|
||||
}
|
||||
|
||||
|
||||
.layuimini-menu-left .layui-nav .layui-nav-item.layui-this a:hover,
|
||||
.layuimini-menu-left-zoom.layui-nav .layui-nav-item.layui-this a:hover {
|
||||
color: #fff !important;
|
||||
}
|
||||
|
||||
.layuimini-menu-left .layui-nav .layui-nav-item a,
|
||||
.layuimini-menu-left-zoom.layui-nav .layui-nav-item a {
|
||||
color: #2e3436 !important;
|
||||
|
||||
&:hover {
|
||||
color: #2e3436 !important;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
.layuimini-menu-left .layui-nav .layui-nav-item a {
|
||||
height : 30px;
|
||||
line-height: 30px;
|
||||
}
|
||||
|
||||
.layuimini-menu-left .layui-nav-itemed>.layui-nav-child {
|
||||
background-color: rgba(46, 52, 54, 0.05) !important;
|
||||
border-top : 1px solid #d7d2ce;
|
||||
|
||||
dd {
|
||||
border-bottom: 1px solid #d7d2ce;
|
||||
}
|
||||
}
|
||||
|
||||
.layuimini-menu-left .layui-nav-tree .layui-this,
|
||||
.layuimini-menu-left .layui-nav-tree .layui-this>a,
|
||||
.layuimini-menu-left .layui-nav-tree .layui-nav-child dd.layui-this,
|
||||
.layuimini-menu-left .layui-nav-tree .layui-nav-child dd.layui-this a,
|
||||
.layuimini-menu-left-zoom.layui-nav-tree .layui-this,
|
||||
.layuimini-menu-left-zoom.layui-nav-tree .layui-this>a,
|
||||
.layuimini-menu-left-zoom.layui-nav-tree .layui-nav-child dd.layui-this,
|
||||
.layuimini-menu-left-zoom.layui-nav-tree .layui-nav-child dd.layui-this a {
|
||||
background-color: #347cd3 !important;
|
||||
color : #fff !important;
|
||||
}
|
||||
|
||||
.layui-layout-admin .layuimini-logo {
|
||||
background-color: unset !important;
|
||||
}
|
||||
|
||||
|
||||
.layuimini-header-menu>li.layui-nav-item {
|
||||
@extend .layui-btn;
|
||||
margin-top : 10px;
|
||||
height : 30px !important;
|
||||
line-height: 30px !important;
|
||||
|
||||
|
||||
&::after {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
&:not(:last-child) {
|
||||
border-right-style : none;
|
||||
border-top-right-radius : 0;
|
||||
border-bottom-right-radius: 0;
|
||||
}
|
||||
|
||||
&:not(:first-child) {
|
||||
border-top-left-radius : 0;
|
||||
border-bottom-left-radius: 0;
|
||||
}
|
||||
|
||||
&:nth-last-child(2) {
|
||||
border-right-style : solid;
|
||||
border-radius : 5px;
|
||||
border-top-left-radius : 0;
|
||||
border-bottom-left-radius: 0;
|
||||
}
|
||||
}
|
||||
|
||||
.layui-layout-admin .layui-header {
|
||||
background-color: #f6f5f4 !important;
|
||||
}
|
||||
|
||||
.layui-layer-dialog {
|
||||
border-radius: 20px;
|
||||
}
|
||||
|
||||
.layui-layer-iframe {
|
||||
border-radius: 20px;
|
||||
}
|
||||
|
||||
.layuimini-tab .layui-tab-control>li {
|
||||
background-color: #e1dedb;
|
||||
border-style : solid;
|
||||
border-color : #cdc7c2;
|
||||
}
|
||||
|
||||
.form-search .layui-btn {
|
||||
height : 32px;
|
||||
line-height: 22px;
|
||||
}
|
||||
|
||||
.form-search .layui-form-select dl {
|
||||
transition : all 80ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
|
||||
background-color : #ffffff;
|
||||
background-clip : padding-box;
|
||||
border : 1px solid rgba(0, 0, 0, 0.23);
|
||||
border-top-left-radius : 0;
|
||||
border-top-right-radius: 0;
|
||||
border-radius : 9px;
|
||||
border-top-left-radius : 0px;
|
||||
border-top-right-radius: 0px;
|
||||
box-shadow : 0 1px 3px 2px rgba(0, 0, 0, 0.08);
|
||||
top : 28px;
|
||||
}
|
||||
|
||||
.layui-form-select dl dd,
|
||||
.layui-form-select dl dt {
|
||||
height : 30px;
|
||||
line-height: 30px;
|
||||
padding : 0 10px;
|
||||
}
|
||||
|
||||
.layuimini-container .layui-form-select dl dd.layui-this {
|
||||
background-color: #3c88e5 !important;
|
||||
}
|
||||
|
||||
.layui-table-header .layui-table {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
.layui-header .layui-nav .layui-nav-child dd.layui-this a,
|
||||
.layui-header .layui-nav-child dd.layui-this,
|
||||
.layui-layout-admin .layui-header .layui-nav .layui-nav-item .layui-nav-child .layui-this a {
|
||||
background-color: #3c88e5 !important;
|
||||
}
|
||||
|
||||
.layuimini-mobile-show {
|
||||
.layui-nav-more {
|
||||
top: 4px;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
.layui-layer-easy .layui-layer-setwin>span {
|
||||
color: #2e3436;
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-setwin>span:after {
|
||||
|
||||
color: #2e3436;
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-setwin .layui-layer-max::after,
|
||||
.layui-layer-easy .layui-layer-setwin .layui-layer-max::before {
|
||||
border-color: #2e3436;
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-setwin .layui-layer-min::before {
|
||||
background-color: #2e3436;
|
||||
}
|
||||
284
public/static/admin/css/themes/_neomorphic.scss
Normal file
@ -0,0 +1,284 @@
|
||||
$main-color:#61677C;
|
||||
|
||||
& {
|
||||
background-color: #EBECF0;
|
||||
}
|
||||
|
||||
.layui-layout-admin .layui-header {
|
||||
background-color: #EBECF0 !important;
|
||||
|
||||
}
|
||||
|
||||
.layuimini-container .layui-btn-success {
|
||||
|
||||
color: #4bb368;
|
||||
}
|
||||
|
||||
.layuimini-container .layui-btn-danger {
|
||||
color: #f56c6c;
|
||||
}
|
||||
|
||||
.layuimini-container .layuimini-btn-primary {
|
||||
color: #2c3e50;
|
||||
}
|
||||
|
||||
.layuimini-container .layui-btn-primary {
|
||||
color: #5f5f5f;
|
||||
}
|
||||
|
||||
.layuimini-container .layui-btn-normal {
|
||||
color: #1e9fff;
|
||||
}
|
||||
|
||||
.layui-btn {
|
||||
border: 0;
|
||||
outline: 0;
|
||||
border-radius: 10px;
|
||||
background-color: #EBECF0;
|
||||
text-shadow: 1px 1px 0 #FFF;
|
||||
color: $main-color;
|
||||
box-shadow: -5px -5px 20px #FFF, 5px 5px 20px #BABECC;
|
||||
transition: all 0.2s ease-in-out;
|
||||
cursor: pointer;
|
||||
font-weight: 600;
|
||||
|
||||
&:hover {
|
||||
box-shadow: -2px -2px 5px #FFF, 2px 2px 5px #BABECC;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
.layui-table-tool .layui-inline[lay-event] {
|
||||
@extend .layui-btn;
|
||||
}
|
||||
|
||||
.layuimini-main {
|
||||
@extend .layui-btn;
|
||||
text-shadow: 0.5px 0.5px 0 #fff;
|
||||
}
|
||||
|
||||
.layui-layer {
|
||||
@extend .layui-btn;
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-title {
|
||||
background-color: transparent !important;
|
||||
color: $main-color !important;
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-setwin>span {
|
||||
color: $main-color !important;
|
||||
|
||||
&::before {
|
||||
border-color: $main-color !important;
|
||||
}
|
||||
|
||||
&::after {
|
||||
border-color: $main-color !important;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-setwin .layui-layer-min::before {
|
||||
background-color: $main-color !important;
|
||||
}
|
||||
|
||||
.layui-card {
|
||||
@extend .layui-btn;
|
||||
text-shadow: 0.5px 0.5px 0 #fff;
|
||||
}
|
||||
|
||||
.layuimini-container .layui-table-tool {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
.layui-table {
|
||||
background-color: #EBECF0;
|
||||
}
|
||||
|
||||
.panel {
|
||||
@extend .layui-btn;
|
||||
text-shadow: 0.5px 0.5px 0 #fff;
|
||||
}
|
||||
|
||||
.layuimini-qiuck-module {
|
||||
@extend .layui-btn;
|
||||
|
||||
i {
|
||||
background-color: transparent
|
||||
}
|
||||
}
|
||||
|
||||
.layui-side.layui-bg-black,
|
||||
.layui-side.layui-bg-black>.layuimini-menu-left>ul,
|
||||
.layuimini-menu-left-zoom>ul {
|
||||
@extend .layui-btn;
|
||||
background-color: #EBECF0 !important;
|
||||
border-radius: 0;
|
||||
}
|
||||
|
||||
|
||||
.layuimini-menu-left .layui-nav .layui-nav-item a,
|
||||
.layuimini-menu-left-zoom.layui-nav .layui-nav-item a {
|
||||
@extend .layui-btn;
|
||||
|
||||
&:hover {
|
||||
box-shadow: -2px -2px 5px #FFF, 2px 2px 5px #BABECC;
|
||||
}
|
||||
}
|
||||
|
||||
.layui-nav-tree .layui-nav-item {
|
||||
margin: 10px;
|
||||
width: calc(100% - 20px);
|
||||
}
|
||||
|
||||
.layuimini-menu-left .layui-nav-itemed>.layui-nav-child {
|
||||
background-color: transparent !important;
|
||||
}
|
||||
|
||||
.layui-nav-tree .layui-nav-child dd {
|
||||
margin: 10px;
|
||||
width: calc(100% - 20px);
|
||||
}
|
||||
|
||||
.layuimini-menu-left .layui-nav-tree .layui-this,
|
||||
.layuimini-menu-left .layui-nav-tree .layui-this>a,
|
||||
.layuimini-menu-left .layui-nav-tree .layui-nav-child dd.layui-this,
|
||||
.layuimini-menu-left .layui-nav-tree .layui-nav-child dd.layui-this a,
|
||||
.layuimini-menu-left-zoom.layui-nav-tree .layui-this,
|
||||
.layuimini-menu-left-zoom.layui-nav-tree .layui-this>a,
|
||||
.layuimini-menu-left-zoom.layui-nav-tree .layui-nav-child dd.layui-this,
|
||||
.layuimini-menu-left-zoom.layui-nav-tree .layui-nav-child dd.layui-this a {
|
||||
background-color: inherit !important;
|
||||
}
|
||||
|
||||
.layuimini-menu-left .layui-nav .layui-nav-item a:hover,
|
||||
.layuimini-menu-left .layui-nav .layui-this a,
|
||||
.layuimini-menu-left-zoom.layui-nav .layui-nav-item a:hover,
|
||||
.layuimini-menu-left-zoom.layui-nav .layui-this a {
|
||||
color: $main-color !important;
|
||||
}
|
||||
|
||||
.layui-layout-admin .layuimini-logo {
|
||||
background-color: transparent !important;
|
||||
}
|
||||
|
||||
.layui-header {
|
||||
.layuimini-header-menu>.layui-nav-item {
|
||||
@extend .layui-btn;
|
||||
margin: 10px;
|
||||
line-height: 40px !important;
|
||||
height: 40px !important;
|
||||
}
|
||||
|
||||
.layui-nav .layui-nav-item {
|
||||
@extend .layui-btn;
|
||||
margin: 10px;
|
||||
line-height: 40px !important;
|
||||
height: 40px !important;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
.layui-btn-xs {
|
||||
padding: 0 9px;
|
||||
}
|
||||
|
||||
.layui-input,
|
||||
.layui-textarea {
|
||||
border: 0;
|
||||
outline: 0;
|
||||
font-size: 16px;
|
||||
border-radius: 320px;
|
||||
padding: 16px;
|
||||
background-color: #EBECF0;
|
||||
text-shadow: 1px 1px 0 #FFF;
|
||||
margin-right: 8px;
|
||||
box-shadow: inset 2px 2px 5px #BABECC, inset -5px -5px 10px #FFF;
|
||||
width: 100%;
|
||||
box-sizing: border-box;
|
||||
transition: all 0.2s ease-in-out;
|
||||
appearance: none;
|
||||
-webkit-appearance: none;
|
||||
}
|
||||
|
||||
.layuimini-upload .layuimini-upload-btn {
|
||||
background-color: transparent !important;
|
||||
}
|
||||
|
||||
.layui-form-pane .layui-form-label {
|
||||
background-color: transparent;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.layuimini-container .layui-form-select dl dd.layui-this {
|
||||
background-color: transparent !important;
|
||||
color: #2c3e50
|
||||
}
|
||||
|
||||
.layuimini-color .elem-content li.layui-this {
|
||||
text-shadow: 0.5px 0.5px 0 #FFF;
|
||||
}
|
||||
|
||||
.layui-form-select dl {
|
||||
@extend .layui-btn;
|
||||
}
|
||||
|
||||
.layui-form-checkbox {
|
||||
|
||||
@extend .layui-btn;
|
||||
padding: 10px 10px 10px 24px;
|
||||
}
|
||||
|
||||
.layui-form-checkbox>i {
|
||||
left: 6px;
|
||||
top: 10px;
|
||||
text-shadow: 0.5px 0.5px 0 #fff;
|
||||
}
|
||||
|
||||
.layui-form-checked:hover>div,
|
||||
.layui-form-checked>div {
|
||||
|
||||
color: #16b777;
|
||||
}
|
||||
|
||||
.layui-tree,
|
||||
.laytable-cell-checkbox {
|
||||
|
||||
.layui-form-checkbox[lay-skin="primary"] {
|
||||
padding: 13px;
|
||||
}
|
||||
|
||||
.layui-form-checkbox[lay-skin="primary"]>i {
|
||||
left: 5px;
|
||||
top: 5px
|
||||
}
|
||||
}
|
||||
|
||||
.layui-tree-txt {
|
||||
margin-left: 10px
|
||||
}
|
||||
|
||||
.layui-form-radio {
|
||||
@extend .layui-btn;
|
||||
|
||||
}
|
||||
|
||||
.layui-form-radio:hover>*,
|
||||
.layui-form-radioed,
|
||||
.layui-form-radioed>i {
|
||||
color: #16b777;
|
||||
}
|
||||
|
||||
.layui-table-tips-c {
|
||||
text-shadow: 0.5px 0.5px 0 #fff;
|
||||
|
||||
}
|
||||
|
||||
.layuimini-tab .layui-tab-title {
|
||||
background-color: #EBECF0;
|
||||
}
|
||||
|
||||
.layuimini-tab .layui-tab-control>li {
|
||||
background-color: #EBECF0;
|
||||
}
|
||||
344
public/static/admin/css/themes/_nes.scss
Normal file
@ -0,0 +1,344 @@
|
||||
a,
|
||||
button {
|
||||
cursor: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAzElEQVRYR+2X0Q6AIAhF5f8/2jYXZkwEjNSVvVUjDpcrGgT7FUkI2D9xRfQETwNIiWO85wfINfQUEyxBG2ArsLwC0jioGt5zFcwF4OYDPi/mBYKm4t0U8ATgRm3ThFoAqkhNgWkA0jJLvaOVSs7j3qMnSgXWBMiWPXe94QqMBMBc1VZIvaTu5u5pQewq0EqNZvIEMCmxAawK0DNkay9QmfFNAJUXfgGgUkLaE7j/h8fnASkxHTz0DGIBMCnBeeM7AArpUd3mz2x3C7wADglA8BcWMZhZAAAAAElFTkSuQmCC) 14 0, pointer
|
||||
}
|
||||
|
||||
& {
|
||||
cursor: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAABFklEQVRYR9WXURLDIAhE6/0PbSdOtUpcd1Gnpv1KGpTHBpCE1/cXq+vrMph7dGvXZTtpfW10DCA5jrH1H0Jhs5E0hnZdCR+vb5S8Nn8mQCeS9BdSalYJqMBjAGzq59xAESN7VFVUgV8AZB/dZBR7QTFDCqGquvUBVVoEtgIwpQRzmANSFHgWQKExHdIrPeuMvQNDarXe6nC/AutgV3JW+6bgqQLeV8FekRtgV+ToDKEKnACYKsfZjjkam7a0ZpYTytwmgainpC3HvwBocgKOxqRjehoR9DFKNFYtOwCGYCszobeCbl26N6yyQ6g8X/Wex/rBPsNEV6qAMaJPMynIHQCoSqS9JSMmwef51LflTgCRszU7DvAGiV6mHWfsaVUAAAAASUVORK5CYII=), auto;
|
||||
font-family: "ark-pixel";
|
||||
}
|
||||
|
||||
$border-line-width:3px;
|
||||
|
||||
.public-border {
|
||||
border-style: solid;
|
||||
border-width: $border-line-width;
|
||||
border-image-slice: 2;
|
||||
border-image-width: 2;
|
||||
border-image-repeat: stretch;
|
||||
border-image-source: url('data:image/svg+xml;utf8,<?xml version="1.0" encoding="UTF-8" ?><svg version="1.1" width="5" height="5" xmlns="http://www.w3.org/2000/svg"><path d="M2 1 h1 v1 h-1 z M1 2 h1 v1 h-1 z M3 2 h1 v1 h-1 z M2 3 h1 v1 h-1 z" fill="rgb(33,37,41)" /></svg>');
|
||||
border-image-outset: 2;
|
||||
}
|
||||
|
||||
|
||||
|
||||
.layui-btn {
|
||||
|
||||
@extend .public-border;
|
||||
line-height: 32px;
|
||||
|
||||
position: relative;
|
||||
display: inline-block;
|
||||
text-align: center;
|
||||
vertical-align: middle;
|
||||
cursor: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAzElEQVRYR+2X0Q6AIAhF5f8/2jYXZkwEjNSVvVUjDpcrGgT7FUkI2D9xRfQETwNIiWO85wfINfQUEyxBG2ArsLwC0jioGt5zFcwF4OYDPi/mBYKm4t0U8ATgRm3ThFoAqkhNgWkA0jJLvaOVSs7j3qMnSgXWBMiWPXe94QqMBMBc1VZIvaTu5u5pQewq0EqNZvIEMCmxAawK0DNkay9QmfFNAJUXfgGgUkLaE7j/h8fnASkxHTz0DGIBMCnBeeM7AArpUd3mz2x3C7wADglA8BcWMZhZAAAAAElFTkSuQmCC) 14 0, pointer;
|
||||
-webkit-user-select: none;
|
||||
-moz-user-select: none;
|
||||
-ms-user-select: none;
|
||||
user-select: none;
|
||||
color: #212529;
|
||||
background-color: #fff;
|
||||
border-image-repeat: stretch;
|
||||
|
||||
&::after {
|
||||
position: absolute;
|
||||
top: -$border-line-width;
|
||||
right: -$border-line-width;
|
||||
bottom: -$border-line-width;
|
||||
left: -$border-line-width;
|
||||
content: "";
|
||||
box-shadow: inset (-$border-line-width) (-$border-line-width) #adafbc;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
color: #212529;
|
||||
text-decoration: none;
|
||||
background-color: #e7e7e7;
|
||||
}
|
||||
|
||||
&.layui-btn-sm {
|
||||
line-height: 100%;
|
||||
}
|
||||
|
||||
&.layui-btn-xs {
|
||||
line-height: 16px;
|
||||
}
|
||||
|
||||
&.layui-btn-normal {
|
||||
color: #fff;
|
||||
background-color: #209cee;
|
||||
|
||||
&::after {
|
||||
box-shadow: inset (-$border-line-width) (-$border-line-width) #006bb3;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
background-color: #108de0;
|
||||
}
|
||||
}
|
||||
|
||||
&.layui-btn-success {
|
||||
color: #fff;
|
||||
background-color: #92cc41;
|
||||
|
||||
&::after {
|
||||
box-shadow: inset (-$border-line-width) (-$border-line-width) #4aa52e;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
background-color: #92cc41;
|
||||
}
|
||||
}
|
||||
|
||||
&.layui-btn-danger {
|
||||
color: #fff;
|
||||
background-color: #e76e55;
|
||||
|
||||
&::after {
|
||||
box-shadow: inset (-$border-line-width) (-$border-line-width) #8c2022;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
background-color: #ce372b;
|
||||
}
|
||||
}
|
||||
|
||||
&.layui-btn-warm {
|
||||
color: #212529;
|
||||
background-color: #f7d51d;
|
||||
|
||||
&::after {
|
||||
box-shadow: inset (-$border-line-width) (-$border-line-width) #e59400;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
color: #212529;
|
||||
background-color: #f2c409;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.form-search .layui-btn {
|
||||
line-height: 16px;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
|
||||
.layuimini-container .layui-table-tool .layui-inline[lay-event] {
|
||||
@extend .layui-btn;
|
||||
line-height: 24px;
|
||||
}
|
||||
|
||||
.layui-table img {
|
||||
image-rendering: pixelated;
|
||||
}
|
||||
|
||||
.layui-form-checkbox[lay-skin="primary"] i {
|
||||
@extend .public-border;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.layui-form-checked[lay-skin="primary"] i {
|
||||
background-color: unset;
|
||||
color: #212529;
|
||||
font-weight: bold;
|
||||
font-size: 28px;
|
||||
}
|
||||
|
||||
.layui-btn {
|
||||
font-size: 18px;
|
||||
}
|
||||
|
||||
.layui-btn-sm {
|
||||
font-size: 16px;
|
||||
}
|
||||
|
||||
.layui-btn-xs {
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
.layui-nav * {
|
||||
font-size: 16px;
|
||||
|
||||
}
|
||||
|
||||
.layui-tab-title li {
|
||||
font-size: 18px;
|
||||
}
|
||||
|
||||
.layui-nav-tree .layui-nav-item {
|
||||
border-bottom: 3px solid #212529;
|
||||
}
|
||||
|
||||
.layuimini-header-menu>.layui-nav-item {
|
||||
|
||||
@extend .public-border;
|
||||
|
||||
border-image-outset: 0;
|
||||
}
|
||||
|
||||
.layui-table td,
|
||||
.layui-table th {
|
||||
font-size: 16px;
|
||||
border-width: 0 2px 2px 0;
|
||||
border-style: solid;
|
||||
border-color: #212529
|
||||
}
|
||||
|
||||
.layui-input,
|
||||
.layui-select,
|
||||
.layui-textarea {
|
||||
@extend .public-border;
|
||||
}
|
||||
|
||||
.layui-form-label {
|
||||
background-color: unset;
|
||||
border: unset;
|
||||
text-align: right;
|
||||
color: #212529;
|
||||
font-size: 16px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.layuimini-form>.layui-form-item>.layui-input-block tip,
|
||||
.layuimini-form>.layui-form-item>.layui-inline tip {
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-title {
|
||||
background: unset !important;
|
||||
color: #212529 !important;
|
||||
font-size: 16px;
|
||||
border-bottom: 1px solid #f0f0f0;
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-btn {
|
||||
background: unset !important;
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-btn a {
|
||||
@extend .layui-btn;
|
||||
color: #212529 !important;
|
||||
|
||||
&.layui-layer-btn0 {
|
||||
color: #fff !important;
|
||||
background-color: #209cee;
|
||||
|
||||
&::after {
|
||||
box-shadow: inset (-$border-line-width) (-$border-line-width) #006bb3;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
background-color: #108de0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
.layui-layer-dialog .layui-layer-content {
|
||||
font-size: 16px;
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-setwin>span {
|
||||
color: #212529;
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-setwin>span:after {
|
||||
|
||||
color: #212529;
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-setwin .layui-layer-max::after,
|
||||
.layui-layer-easy .layui-layer-setwin .layui-layer-max::before {
|
||||
border-color: #212529;
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-setwin .layui-layer-min::before {
|
||||
background-color: #212529;
|
||||
}
|
||||
|
||||
|
||||
.layui-layer {
|
||||
@extend .public-border;
|
||||
|
||||
}
|
||||
|
||||
.layui-card {
|
||||
@extend .public-border;
|
||||
|
||||
.layui-card-header {
|
||||
font-size: 18px;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
.layuimini-main {
|
||||
@extend .public-border;
|
||||
}
|
||||
|
||||
.layui-table-box {
|
||||
@extend .public-border;
|
||||
border-image-outset: 1;
|
||||
margin-top: 5px;
|
||||
}
|
||||
|
||||
.layuimini-container .layui-table-box .layui-table-header th {
|
||||
|
||||
color: #212529 !important;
|
||||
}
|
||||
|
||||
.layui-table tbody tr:hover,
|
||||
.layui-table thead tr,
|
||||
.layui-table-click,
|
||||
.layui-table-header,
|
||||
.layui-table-hover,
|
||||
.layui-table-mend,
|
||||
.layui-table-patch,
|
||||
.layui-table-tool,
|
||||
.layui-table-total,
|
||||
.layui-table-total tr {
|
||||
background-color: unset;
|
||||
}
|
||||
|
||||
.layui-table-header .layui-table {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
.layui-badge,
|
||||
.layui-badge-rim {
|
||||
position: relative;
|
||||
border-radius: 0;
|
||||
|
||||
&::after {
|
||||
content: '';
|
||||
position: absolute;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
top: 0;
|
||||
pointer-events: none;
|
||||
box-shadow: 0 4px #209cee, 0 -4px #209cee, 4px 0 #209cee, -4px 0 #209cee;
|
||||
}
|
||||
|
||||
&.layui-bg-blue {
|
||||
background-color: #209cee;
|
||||
|
||||
&::after {
|
||||
box-shadow: 0 4px #209cee, 0 -4px #209cee, 4px 0 #209cee, -4px 0 #209cee;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
&.layui-bg-gray {
|
||||
background-color: #92cc41;
|
||||
|
||||
&::after {
|
||||
box-shadow: 0 4px #92cc41, 0 -4px #92cc41, 4px 0 #92cc41, -4px 0 #92cc41;
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.layuimini-color .elem-content li {
|
||||
cursor: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAzElEQVRYR+2X0Q6AIAhF5f8/2jYXZkwEjNSVvVUjDpcrGgT7FUkI2D9xRfQETwNIiWO85wfINfQUEyxBG2ArsLwC0jioGt5zFcwF4OYDPi/mBYKm4t0U8ATgRm3ThFoAqkhNgWkA0jJLvaOVSs7j3qMnSgXWBMiWPXe94QqMBMBc1VZIvaTu5u5pQewq0EqNZvIEMCmxAawK0DNkay9QmfFNAJUXfgGgUkLaE7j/h8fnASkxHTz0DGIBMCnBeeM7AArpUd3mz2x3C7wADglA8BcWMZhZAAAAAElFTkSuQmCC) 14 0, pointer;
|
||||
}
|
||||
0
public/static/admin/css/themes/_normal.scss
Normal file
802
public/static/admin/css/themes/_sicfi.scss
Normal file
@ -0,0 +1,802 @@
|
||||
// 通常用于背景色
|
||||
$black-color :rgb(2, 17, 20);
|
||||
// 通常用于字体颜色
|
||||
$main-color :rgb(126, 252, 246);
|
||||
// 通常用于边框
|
||||
$less-main-color:rgb(6, 216, 215);
|
||||
|
||||
$plus-main-color:rgb(0, 125, 124);
|
||||
|
||||
// 通常用于激活状态,通常跟背景色搭配
|
||||
$cover-color :rgba(62, 251, 251, 0.05);
|
||||
// 更强的激活状态,适合做选项操作时使用
|
||||
$active-color :rgba(62, 251, 251, 0.5);
|
||||
|
||||
|
||||
$red-color :rgb(255, 0, 0);
|
||||
$yellow-color:rgb(255, 255, 153);
|
||||
$green-color :rgb(0, 255, 0);
|
||||
|
||||
& {
|
||||
background-color: $black-color;
|
||||
color: $main-color;
|
||||
}
|
||||
|
||||
.layuimini-main {
|
||||
background-color: $black-color;
|
||||
}
|
||||
|
||||
.layuimini-container {
|
||||
background-color: $black-color;
|
||||
}
|
||||
|
||||
.layuimini-container .layui-table-tool {
|
||||
background-color: $black-color;
|
||||
}
|
||||
|
||||
$box-shape: polygon(0 0, 100% 0, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0 100%, 0 0);
|
||||
|
||||
.layui-btn {
|
||||
|
||||
&.layui-btn-lg {
|
||||
|
||||
padding-right: 25px;
|
||||
}
|
||||
|
||||
clip-path : $box-shape;
|
||||
padding-right : 10px;
|
||||
position : relative;
|
||||
background-color: transparent;
|
||||
border : 1px solid;
|
||||
color : rgb(126, 252, 246);
|
||||
text-shadow : rgb(126, 252, 246) 0px 0px 1px;
|
||||
background-color: rgb(126, 252, 246);
|
||||
|
||||
|
||||
&::before {
|
||||
content: '';
|
||||
display: block;
|
||||
position: absolute;
|
||||
z-index: -1;
|
||||
clip-path: $box-shape;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
left: -0.5px;
|
||||
top: -0.5px;
|
||||
background-color: $black-color;
|
||||
}
|
||||
|
||||
&:hover::after {
|
||||
content: '';
|
||||
display: block;
|
||||
position: absolute;
|
||||
z-index: -1;
|
||||
clip-path: $box-shape;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
left: -0.5px;
|
||||
top: -0.5px;
|
||||
background-color: rgba(126, 252, 246, 0.2);
|
||||
}
|
||||
|
||||
&.layui-btn-disabled {
|
||||
&::after {
|
||||
// todo:实现按钮禁用样式
|
||||
}
|
||||
}
|
||||
|
||||
&.layui-btn-success {
|
||||
text-shadow: rgb(0, 255, 0) 0px 0px 1px;
|
||||
color: rgb(0, 255, 0);
|
||||
background-color: rgba(0, 255, 0);
|
||||
border: unset;
|
||||
|
||||
&:hover::after {
|
||||
background-color: rgba(0, 255, 0, 0.2);
|
||||
}
|
||||
}
|
||||
|
||||
&.layui-btn-danger {
|
||||
text-shadow: rgb(255, 0, 0) 0px 0px 1px;
|
||||
color: rgb(255, 0, 0);
|
||||
background-color: rgb(255, 0, 0);
|
||||
border: unset;
|
||||
|
||||
&:hover::after {
|
||||
background-color: rgba(255, 0, 0, 0.2);
|
||||
}
|
||||
}
|
||||
|
||||
&.layuimini-btn-primary {
|
||||
text-shadow: rgb(255, 255, 153) 0px 0px 1px;
|
||||
color: rgb(255, 255, 153);
|
||||
background-color: rgb(255, 255, 153);
|
||||
border: unset;
|
||||
|
||||
&:hover::after {
|
||||
background-color: rgba(255, 255, 153, 0.2);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
&.layui-btn-primary {
|
||||
border: unset;
|
||||
}
|
||||
|
||||
&.layui-btn-normal {
|
||||
color: $black-color;
|
||||
background-color: $main-color;
|
||||
border: unset;
|
||||
|
||||
&::before {
|
||||
background-color: $main-color;
|
||||
}
|
||||
|
||||
&:hover::after {
|
||||
background-color: $main-color;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.layui-table {
|
||||
background: $black-color;
|
||||
color: $main-color;
|
||||
|
||||
|
||||
tr {
|
||||
background-color: $cover-color;
|
||||
}
|
||||
|
||||
td {
|
||||
border-color: $less-main-color;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
.layui-table-header {
|
||||
background-color: $black-color;
|
||||
}
|
||||
|
||||
.layuimini-container .layui-table-box {
|
||||
border-color: $less-main-color;
|
||||
}
|
||||
|
||||
.layuimini-container .layui-table-box .layui-table-header th {
|
||||
color: $main-color !important;
|
||||
}
|
||||
|
||||
.layui-table-tool .layui-inline[lay-event] {
|
||||
color: $main-color;
|
||||
border: none;
|
||||
position: relative;
|
||||
|
||||
&::after {
|
||||
border-color: $main-color;
|
||||
border-width: 1px;
|
||||
border-style: solid;
|
||||
clip-path: $box-shape;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
top: 0;
|
||||
width: calc(100% - 1px);
|
||||
height: calc(100% - 1px);
|
||||
content: '';
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
|
||||
.layui-table tbody tr:hover {
|
||||
background-color: rgba(126, 252, 246, 0.1);
|
||||
}
|
||||
|
||||
.layuimini-main {
|
||||
border-color: $less-main-color;
|
||||
}
|
||||
|
||||
.layui-table-header {
|
||||
border-color: $less-main-color;
|
||||
}
|
||||
|
||||
|
||||
|
||||
.color-content>ul>li>a>div>span:nth-child(2) {
|
||||
background-color: $black-color !important;
|
||||
}
|
||||
|
||||
.layuimini-color .elem-content li {
|
||||
clip-path: $box-shape;
|
||||
}
|
||||
|
||||
.layuimini-color .elem-content li.layui-this {
|
||||
background-color: $main-color;
|
||||
color: $black-color !important;
|
||||
border-color: $less-main-color;
|
||||
}
|
||||
|
||||
.layuimini-color .more-menu-item {
|
||||
color: $main-color;
|
||||
|
||||
&:hover {
|
||||
background-color: rgba(62, 251, 251, 0.05);
|
||||
}
|
||||
}
|
||||
|
||||
.layui-layout-admin .layui-header {
|
||||
background-color: $cover-color !important;
|
||||
}
|
||||
|
||||
.layuimini-tab .layui-tab-title {
|
||||
background-color: $cover-color !important;
|
||||
border-color: $less-main-color;
|
||||
|
||||
}
|
||||
|
||||
.layuimini-tab .layui-tab-title span {
|
||||
color: $active-color;
|
||||
}
|
||||
|
||||
.layui-header .layuimini-menu-header-pc.layui-nav .layui-nav-item a:hover,
|
||||
.layui-header .layuimini-header-menu.layuimini-pc-show.layui-nav .layui-this a {
|
||||
color: $black-color !important;
|
||||
}
|
||||
|
||||
.layui-layout-admin .layui-header .layui-nav .layui-nav-item a {
|
||||
color: $main-color !important;
|
||||
}
|
||||
|
||||
.layui-layout-admin .layui-header .layui-nav .layui-nav-item {
|
||||
background-color: $active-color;
|
||||
|
||||
}
|
||||
|
||||
|
||||
.layui-layout-admin .layui-header .layuimini-header-content>ul>.layui-nav-item.layui-this,
|
||||
.layuimini-tool i:hover {
|
||||
background-color: $main-color !important;
|
||||
}
|
||||
|
||||
.layuimini-tab .layui-tab-control>li {
|
||||
background-color: $black-color;
|
||||
border-color: $less-main-color;
|
||||
}
|
||||
|
||||
.layuimini-tab .layui-tab-title li {
|
||||
border-color: $less-main-color;
|
||||
}
|
||||
|
||||
.layui-flow-more a *,
|
||||
.layui-laypage input,
|
||||
.layui-table-view select[lay-ignore] {
|
||||
border-color: $less-main-color;
|
||||
background-color: $black-color;
|
||||
color: $main-color;
|
||||
}
|
||||
|
||||
.layui-laypage button,
|
||||
.layui-laypage input {
|
||||
border-color: $less-main-color;
|
||||
background-color: $black-color;
|
||||
color: $main-color;
|
||||
|
||||
}
|
||||
|
||||
.layuimini-container .layui-form-switch {
|
||||
border-color: $less-main-color !important;
|
||||
background-color: $black-color !important;
|
||||
|
||||
}
|
||||
|
||||
.layuimini-container .layui-form-onswitch {
|
||||
background-color: $main-color !important;
|
||||
}
|
||||
|
||||
.layuimini-container .layui-form-switch.layui-form-onswitch i {
|
||||
background-color: $black-color !important;
|
||||
}
|
||||
.layuimini-container .layui-laypage .layui-laypage-curr .layui-laypage-em {
|
||||
background-color: $main-color !important;
|
||||
}
|
||||
|
||||
.layui-laypage .layui-laypage-curr em {
|
||||
color: $black-color !important;
|
||||
}
|
||||
|
||||
.layuimini-tab .layui-tab-title .layui-this .layuimini-tab-active {
|
||||
background-color: $less-main-color;
|
||||
|
||||
}
|
||||
|
||||
.layui-table-view .layui-form-checkbox.layui-form-checked[lay-skin="primary"] i {
|
||||
border-color: $main-color;
|
||||
background-color: $main-color;
|
||||
color: $black-color;
|
||||
}
|
||||
|
||||
.layui-table-view .layui-form-checkbox[lay-skin="primary"] i {
|
||||
background-color: $cover-color;
|
||||
}
|
||||
|
||||
.layui-table-init {
|
||||
background-color: $black-color;
|
||||
}
|
||||
|
||||
.box-border-line {
|
||||
position: relative;
|
||||
border: 1px solid $less-main-color;
|
||||
border-width: 1px;
|
||||
$border-offset: 3px;
|
||||
|
||||
&::before {
|
||||
content: '';
|
||||
position: absolute;
|
||||
width: 50px;
|
||||
height: 20px;
|
||||
transition: all 0.2s;
|
||||
border: 1px solid $less-main-color;
|
||||
top: -$border-offset;
|
||||
left: -$border-offset;
|
||||
border-right: none;
|
||||
border-bottom: none;
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
&::after {
|
||||
content: "";
|
||||
position: absolute;
|
||||
width: 50px;
|
||||
height: 20px;
|
||||
transition: all 0.2s;
|
||||
border: 1px solid $less-main-color;
|
||||
bottom: -$border-offset;
|
||||
right: -$border-offset;
|
||||
border-left: none;
|
||||
border-top: none;
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
|
||||
&::after,
|
||||
&::before {
|
||||
width: calc(100% + $border-offset);
|
||||
height: calc(100% + $border-offset);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.table-search-fieldset {
|
||||
.layui-input-inline {
|
||||
margin-right: 0;
|
||||
}
|
||||
|
||||
|
||||
|
||||
.layui-form-item:not(:last-child) {
|
||||
margin-right: 10px;
|
||||
@extend .box-border-line;
|
||||
}
|
||||
|
||||
.layui-form-label {
|
||||
border: unset;
|
||||
}
|
||||
}
|
||||
|
||||
.layui-form-pane .layui-form-label {
|
||||
background-color: $cover-color;
|
||||
color: $main-color;
|
||||
}
|
||||
|
||||
.layuimini-container .table-search-fieldset {
|
||||
color: $main-color;
|
||||
border-color: $less-main-color;
|
||||
|
||||
}
|
||||
|
||||
.layui-form-select,
|
||||
.layui-form-autocomplete {
|
||||
dl {
|
||||
|
||||
color: $main-color;
|
||||
background-color: $black-color;
|
||||
border-color: $less-main-color;
|
||||
|
||||
dd {
|
||||
&.layui-this {
|
||||
background-color: $main-color !important;
|
||||
color: $black-color;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
background-color: $less-main-color !important;
|
||||
color: $black-color;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.layui-iconpicker-item,
|
||||
.layui-iconpicker-item:hover {
|
||||
border-color: $less-main-color !important;
|
||||
color: $black-color;
|
||||
|
||||
.layui-iconpicker-icon:hover {
|
||||
border-color: $less-main-color !important;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
.layui-nav-child {
|
||||
background-color: $black-color;
|
||||
color: $main-color;
|
||||
}
|
||||
|
||||
.layui-layout-admin .layui-header .layui-nav .layui-nav-item .layui-nav-child a {
|
||||
color: $main-color !important;
|
||||
}
|
||||
|
||||
.layui-badge,
|
||||
.layui-badge-dot,
|
||||
.layui-badge-rim {
|
||||
background-color: $main-color;
|
||||
}
|
||||
|
||||
.layui-nav .layui-nav-child a:hover {
|
||||
background-color: $active-color;
|
||||
}
|
||||
|
||||
.layui-table-tool-panel {
|
||||
background-color: $black-color;
|
||||
}
|
||||
|
||||
.layui-form-checkbox[lay-skin="primary"] span {
|
||||
color: $main-color;
|
||||
}
|
||||
|
||||
.layui-table-tool-panel li:hover {
|
||||
background-color: $active-color;
|
||||
}
|
||||
|
||||
.layui-side.layui-bg-black,
|
||||
.layui-side.layui-bg-black>.layuimini-menu-left>ul,
|
||||
.layuimini-menu-left-zoom>ul {
|
||||
background-color: $black-color !important;
|
||||
|
||||
}
|
||||
|
||||
.layui-side {
|
||||
border-right: 1px solid $main-color;
|
||||
}
|
||||
|
||||
.layui-bg-blue {
|
||||
background-color: #0000ff !important;
|
||||
}
|
||||
|
||||
.layui-bg-orange {
|
||||
background-color: $yellow-color !important;
|
||||
color: $black-color !important;
|
||||
}
|
||||
|
||||
.layui-bg-green {
|
||||
background-color: $green-color !important;
|
||||
color: $black-color !important;
|
||||
}
|
||||
|
||||
.layui-table-hover {
|
||||
background-color: $cover-color;
|
||||
}
|
||||
|
||||
.layui-table-grid-down {
|
||||
background-color: $black-color;
|
||||
color: $main-color;
|
||||
border-color: unset;
|
||||
}
|
||||
|
||||
.layui-table-tips-main {
|
||||
background-color: $main-color;
|
||||
color: $black-color;
|
||||
}
|
||||
|
||||
.layui-layout-admin .layui-header .layuimini-tool i {
|
||||
color: $main-color;
|
||||
}
|
||||
|
||||
.color-red {
|
||||
color: $red-color !important;
|
||||
}
|
||||
|
||||
.layuimini-tab .layui-tab-title .layui-this span {
|
||||
color: $main-color;
|
||||
}
|
||||
|
||||
.layui-card {
|
||||
|
||||
background-color: $cover-color;
|
||||
border-radius: 0;
|
||||
|
||||
@extend .box-border-line;
|
||||
|
||||
.layui-card-header {
|
||||
color: $main-color;
|
||||
}
|
||||
}
|
||||
|
||||
.layui-text {
|
||||
color: $main-color;
|
||||
}
|
||||
|
||||
|
||||
.layuimini-qiuck-module {
|
||||
cursor: pointer;
|
||||
|
||||
a i {
|
||||
background-color: $cover-color;
|
||||
color: $active-color;
|
||||
}
|
||||
|
||||
a cite {
|
||||
color: $active-color;
|
||||
}
|
||||
|
||||
|
||||
&:hover {
|
||||
a i {
|
||||
background-color: $active-color;
|
||||
color: $main-color;
|
||||
}
|
||||
|
||||
a cite {
|
||||
color: $main-color;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
.layui-bg-number {
|
||||
background-color: $cover-color;
|
||||
}
|
||||
|
||||
.layui-input,
|
||||
.layui-select,
|
||||
.layui-textarea,
|
||||
.city-picker-span,
|
||||
.main-input {
|
||||
background-color: $cover-color;
|
||||
color: $main-color;
|
||||
}
|
||||
|
||||
.city-picker-span>.title>span {
|
||||
color: $main-color;
|
||||
|
||||
&:hover {
|
||||
background-color: $main-color;
|
||||
color: $black-color;
|
||||
}
|
||||
}
|
||||
|
||||
.layui-form-radio:hover *,
|
||||
.layui-form-radioed,
|
||||
.layui-form-radioed>i {
|
||||
color: $main-color;
|
||||
}
|
||||
|
||||
.layui-form-checked[lay-skin="primary"] i {
|
||||
border-color: $main-color !important;
|
||||
background-color: $main-color;
|
||||
color: $black-color;
|
||||
}
|
||||
|
||||
.layui-input:focus,
|
||||
.layui-textarea:focus {
|
||||
border-color: $main-color !important;
|
||||
}
|
||||
|
||||
.layui-input:hover,
|
||||
.layui-textarea:hover {
|
||||
border-color: $main-color !important;
|
||||
|
||||
}
|
||||
|
||||
.layui-badge-rim,
|
||||
.layui-border,
|
||||
.layui-colla-content,
|
||||
.layui-colla-item,
|
||||
.layui-collapse,
|
||||
.layui-elem-field,
|
||||
.layui-form-pane .layui-form-item[pane],
|
||||
.layui-form-pane .layui-form-label,
|
||||
.layui-input,
|
||||
.layui-layedit,
|
||||
.layui-layedit-tool,
|
||||
.layui-panel,
|
||||
.layui-quote-nm,
|
||||
.layui-select,
|
||||
.layui-tab-bar,
|
||||
.layui-tab-card,
|
||||
.layui-tab-title,
|
||||
.layui-tab-title .layui-this::after,
|
||||
.layui-textarea {
|
||||
border-color: $main-color !important;
|
||||
}
|
||||
|
||||
.form-search .layui-input-inline input,
|
||||
.form-search .layui-input-inline select {
|
||||
border-width: 0 0 0 1px;
|
||||
}
|
||||
|
||||
.layuimini-tab .layui-tab-tool .layui-nav-child {
|
||||
border-color: $main-color;
|
||||
}
|
||||
|
||||
.layui-nav .layui-nav-child a {
|
||||
color: $main-color;
|
||||
}
|
||||
|
||||
.layui-form-item {
|
||||
margin-bottom: 12px;
|
||||
}
|
||||
|
||||
.layuimini-upload .layuimini-upload-btn {
|
||||
background-color: $black-color;
|
||||
}
|
||||
|
||||
.layui-layer {
|
||||
border: 1px solid $main-color;
|
||||
background-color: $black-color;
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-title {
|
||||
background-color: $plus-main-color !important;
|
||||
color: $main-color !important;
|
||||
}
|
||||
|
||||
|
||||
|
||||
.layui-table td,
|
||||
.layui-table th,
|
||||
.layui-table-col-set,
|
||||
.layui-table-fixed-r,
|
||||
.layui-table-grid-down,
|
||||
.layui-table-header,
|
||||
.layui-table-page,
|
||||
.layui-table-tips-main,
|
||||
.layui-table-tool,
|
||||
.layui-table-total,
|
||||
.layui-table-view,
|
||||
.layui-table[lay-skin="line"],
|
||||
.layui-table[lay-skin="row"] {
|
||||
border-color: $less-main-color;
|
||||
}
|
||||
|
||||
.layui-table tbody tr:hover,
|
||||
.layui-table thead tr,
|
||||
.layui-table-click,
|
||||
.layui-table-header,
|
||||
.layui-table-hover,
|
||||
.layui-table-mend,
|
||||
.layui-table-patch,
|
||||
.layui-table-tool,
|
||||
.layui-table-total,
|
||||
.layui-table-total tr {
|
||||
background-color: $black-color;
|
||||
}
|
||||
|
||||
.hr-line {
|
||||
color: $main-color;
|
||||
border-color: $less-main-color;
|
||||
background-color: $main-color;
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-btn {
|
||||
background-color: $black-color;
|
||||
border-top: 1px solid $less-main-color;
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-btn .layui-layer-btn0 {
|
||||
background-color: $main-color;
|
||||
border-color: $less-main-color;
|
||||
color: $main-color !important;
|
||||
clip-path: $box-shape;
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-btn a {
|
||||
@extend .layui-btn
|
||||
}
|
||||
|
||||
.layui-layer-shade {
|
||||
background-color: #fff !important;
|
||||
}
|
||||
|
||||
.layuimini-menu-left {
|
||||
.layui-nav-tree .layui-nav-item {
|
||||
|
||||
margin: 5px;
|
||||
width: calc(100% - 10px);
|
||||
}
|
||||
|
||||
.layui-nav .layui-nav-item {
|
||||
clip-path: $box-shape;
|
||||
color: $main-color;
|
||||
background-color: $active-color;
|
||||
|
||||
&.layui-this a {
|
||||
background-color: $main-color !important;
|
||||
color: $black-color !important;
|
||||
}
|
||||
|
||||
&.layui-this {
|
||||
background-color: $main-color !important;
|
||||
color: $black-color !important;
|
||||
|
||||
span {
|
||||
background-color: $main-color !important;
|
||||
color: $black-color !important;
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.layui-nav .layui-nav-item a:hover {
|
||||
background-color: $active-color !important;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
.layuimini-menu-left .layui-nav .layui-nav-item a,
|
||||
.layuimini-menu-left-zoom.layui-nav .layui-nav-item a {
|
||||
color: $main-color !important;
|
||||
}
|
||||
|
||||
.layuimini-menu-left .layui-nav-item a span {
|
||||
color: $main-color !important;
|
||||
|
||||
}
|
||||
|
||||
.layuimini-menu-left .layui-nav-item:hover a span {
|
||||
color: $black-color !important;
|
||||
|
||||
}
|
||||
|
||||
.layui-layout-admin .layuimini-logo {
|
||||
background-color: $black-color !important;
|
||||
|
||||
}
|
||||
|
||||
.layuimini-menu-left .layui-nav-itemed>.layui-nav-child {
|
||||
background-color: $black-color !important;
|
||||
}
|
||||
|
||||
.layuimini-menu-left .layui-nav-tree .layui-this,
|
||||
.layuimini-menu-left .layui-nav-tree .layui-this>a,
|
||||
.layuimini-menu-left .layui-nav-tree .layui-nav-child dd.layui-this,
|
||||
.layuimini-menu-left .layui-nav-tree .layui-nav-child dd.layui-this a,
|
||||
.layuimini-menu-left-zoom.layui-nav-tree .layui-this,
|
||||
.layuimini-menu-left-zoom.layui-nav-tree .layui-this>a,
|
||||
.layuimini-menu-left-zoom.layui-nav-tree .layui-nav-child dd.layui-this,
|
||||
.layuimini-menu-left-zoom.layui-nav-tree .layui-nav-child dd.layui-this a {
|
||||
background-color: $main-color !important;
|
||||
color: $black-color !important;
|
||||
|
||||
.layui-left-nav {
|
||||
color: $black-color !important;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
.layui-iconpicker-icon {
|
||||
border-color: $less-main-color !important;
|
||||
background-color: $less-main-color !important;
|
||||
}
|
||||
|
||||
.layui-iconpicker .layui-anim {
|
||||
background-color: $black-color;
|
||||
}
|
||||
|
||||
.layui-iconpicker .layui-iconpicker-list {
|
||||
background-color: $black-color;
|
||||
}
|
||||
|
||||
.layui-header .layui-nav .layui-nav-child dd.layui-this a,
|
||||
.layui-header .layui-nav-child dd.layui-this,
|
||||
.layui-layout-admin .layui-header .layui-nav .layui-nav-item .layui-nav-child .layui-this a {
|
||||
background-color: $active-color !important;
|
||||
}
|
||||
288
public/static/admin/css/themes/_win7.scss
Normal file
@ -0,0 +1,288 @@
|
||||
& {
|
||||
color: #222;
|
||||
background-color: #f0f0f0;
|
||||
}
|
||||
|
||||
.layui-btn {
|
||||
background: linear-gradient(180deg, #eee 45%, #ddd 0, #bbb);
|
||||
border: 1.5px solid #888;
|
||||
border-radius: 3px;
|
||||
box-shadow: inset 0 -1px 1px hsla(0, 0%, 100%, .8), inset 0 1px 1px #fff;
|
||||
box-sizing: border-box;
|
||||
color: #222;
|
||||
|
||||
|
||||
&:hover {
|
||||
background: linear-gradient(180deg, #e5f4fd 45%, #b3e0f9 0);
|
||||
border-color: #72a2c5;
|
||||
}
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-btn a {
|
||||
@extend .layui-btn;
|
||||
color: #222 !important;
|
||||
|
||||
height: 26px;
|
||||
line-height: 26px;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
.layui-layer-title {
|
||||
background: linear-gradient(90deg, hsla(0, 0%, 100%, .4), rgba(0, 0, 0, .1), hsla(0, 0%, 100%, .2)), linear-gradient(55deg, transparent, rgba(0, 0, 0, .1) 20%, rgba(0, 0, 0, .1) 50%, transparent 53%), #4580c4 !important;
|
||||
border: 1px solid rgba(0, 0, 0, .6);
|
||||
border-radius: 6px 6px 0 0;
|
||||
// box-shadow : inset 0 0 .5px .5px #fff;
|
||||
|
||||
height: 27px;
|
||||
line-height: 27px;
|
||||
|
||||
color: #000 !important;
|
||||
letter-spacing: 0;
|
||||
font-size: 12px;
|
||||
text-shadow: 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff;
|
||||
|
||||
padding: 0 80px 0 8px;
|
||||
|
||||
border: 0;
|
||||
box-shadow: inset 0 .5px #fff;
|
||||
|
||||
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-title~.layui-layer-setwin {
|
||||
height: 27px !important;
|
||||
top: 1px;
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-title~.layui-layer-setwin>span {
|
||||
height: 20px !important;
|
||||
line-height: 20px !important;
|
||||
|
||||
background: linear-gradient(hsla(0, 0%, 100%, .3), hsla(0, 0%, 100%, .3) 45%, rgba(0, 0, 0, .1) 50%, rgba(0, 0, 0, .1) 75%, hsla(0, 0%, 100%, .5)) !important;
|
||||
border: 0;
|
||||
border-radius: 0;
|
||||
border-bottom-right-radius: 0px;
|
||||
border-right: 1px solid rgba(0, 0, 0, .6);
|
||||
box-shadow: inset 0 0 0 .5px #eee;
|
||||
box-sizing: border-box;
|
||||
|
||||
padding: 0;
|
||||
position: relative;
|
||||
|
||||
margin-left: 0;
|
||||
|
||||
min-width: 26px;
|
||||
text-align: center;
|
||||
|
||||
&:hover {
|
||||
background: radial-gradient(circle at 50% 100%, #2aceda, transparent 60%), linear-gradient(#a9d2e8 50%, #196c9b 0) !important;
|
||||
}
|
||||
|
||||
|
||||
&:last-child {
|
||||
border: 0;
|
||||
border-bottom-right-radius: 5px;
|
||||
|
||||
}
|
||||
|
||||
&:first-child {
|
||||
border-bottom-left-radius: 5px;
|
||||
}
|
||||
|
||||
&.layui-layer-close1 {
|
||||
background-color: #d04a37 !important;
|
||||
min-width: 45px !important;
|
||||
|
||||
|
||||
&:hover {
|
||||
filter: contrast(1.3);
|
||||
background-image: linear-gradient(hsla(0, 0%, 100%, .3), hsla(0, 0%, 100%, .3) 45%, rgba(0, 0, 0, .1) 50%, rgba(0, 0, 0, .1) 75%, hsla(0, 0%, 100%, .5)) !important;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
.layui-layer-dialog {
|
||||
border-radius: 20px;
|
||||
}
|
||||
|
||||
.layui-layer-iframe {
|
||||
border-radius: 20px;
|
||||
}
|
||||
|
||||
.layui-layer:not(.layui-layer-loading) {
|
||||
|
||||
.layui-layer-content {
|
||||
background: #f0f0f0;
|
||||
border: 1px solid rgba(0, 0, 0, .6);
|
||||
box-shadow: 0 -1px 1px .5px #fff;
|
||||
margin: 0 6px 0 6px;
|
||||
padding: 6px;
|
||||
border-bottom-width: 0;
|
||||
}
|
||||
|
||||
&::before {
|
||||
background: linear-gradient(transparent 20%, hsla(0, 0%, 100%, .7) 40%, transparent 41%), linear-gradient(90deg, hsla(0, 0%, 100%, .4), rgba(0, 0, 0, .1), hsla(0, 0%, 100%, .2)), linear-gradient(55deg, transparent, rgba(0, 0, 0, .1) 20%, rgba(0, 0, 0, .1) 50%, transparent 53%), #4580c4;
|
||||
border-radius: 6px;
|
||||
content: "";
|
||||
height: 100%;
|
||||
position: absolute;
|
||||
width: 100%;
|
||||
z-index: -1;
|
||||
|
||||
}
|
||||
|
||||
&.layui-layer-iframe {
|
||||
|
||||
&::before {
|
||||
height: calc(100% + 20px);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.layui-layer-easy .layui-layer-btn {
|
||||
background: #f0f0f0;
|
||||
border: 1px solid rgba(0, 0, 0, .6);
|
||||
box-shadow: 0 0 1px .5px #fff;
|
||||
margin: 0 6px 6px;
|
||||
padding: 6px;
|
||||
border-top: 0;
|
||||
text-align: right !important;
|
||||
}
|
||||
|
||||
.layui-card {
|
||||
|
||||
border: 1px solid rgba(0, 0, 0, .6);
|
||||
border-radius: 6px;
|
||||
box-shadow: 0 0 5px 1px rgba(0, 0, 0, .6);
|
||||
font: 9pt Segoe UI, sans-serif;
|
||||
position: relative;
|
||||
z-index: 0;
|
||||
|
||||
&::before {
|
||||
background: linear-gradient(transparent 20%, hsla(0, 0%, 100%, .7) 40%, transparent 41%), linear-gradient(90deg, hsla(0, 0%, 100%, .4), rgba(0, 0, 0, .1), hsla(0, 0%, 100%, .2)), linear-gradient(55deg, transparent, rgba(0, 0, 0, .1) 20%, rgba(0, 0, 0, .1) 50%, transparent 53%), #4580c4;
|
||||
border-radius: 6px;
|
||||
content: "";
|
||||
height: 100%;
|
||||
position: absolute;
|
||||
width: 100%;
|
||||
z-index: -1;
|
||||
}
|
||||
|
||||
|
||||
.layui-card-header {
|
||||
align-items: center;
|
||||
background: linear-gradient(90deg, hsla(0, 0%, 100%, .4), rgba(0, 0, 0, .1), hsla(0, 0%, 100%, .2)), linear-gradient(55deg, transparent, rgba(0, 0, 0, .1) 20%, rgba(0, 0, 0, .1) 50%, transparent 53%), #4580c4;
|
||||
border-radius: 6px 6px 0 0;
|
||||
font: 9pt Segoe UI, sans-serif;
|
||||
justify-content: space-between;
|
||||
padding: 6px;
|
||||
border: 0;
|
||||
box-shadow: inset 0 .5px #fff;
|
||||
height: 15px;
|
||||
|
||||
color: #000;
|
||||
letter-spacing: 0;
|
||||
line-height: 15px;
|
||||
text-shadow: 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff;
|
||||
|
||||
}
|
||||
|
||||
.layui-card-body {
|
||||
background: #f0f0f0;
|
||||
border: 1px solid rgba(0, 0, 0, .6);
|
||||
box-shadow: 0 0 1px .5px #fff;
|
||||
margin: 0 6px 6px;
|
||||
padding: 6px;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
.layui-tab-brief>.layui-tab-title .layui-this {
|
||||
color: #222;
|
||||
}
|
||||
|
||||
.layuimini-tab .layui-tab-control>li {
|
||||
height: 27px !important;
|
||||
line-height: 27px !important;
|
||||
}
|
||||
|
||||
.layui-form-checkbox[lay-skin="primary"] i {
|
||||
background: #ddd;
|
||||
border: 1px solid #888;
|
||||
box-shadow: inset 0 0 0 1.5px #eee, inset 0 2px 4px #888, inset -2px -3px 4px #fff;
|
||||
box-sizing: border-box;
|
||||
content: "";
|
||||
display: inline-block;
|
||||
height: 13px;
|
||||
margin-right: 6px;
|
||||
width: 13px;
|
||||
color: transparent;
|
||||
}
|
||||
|
||||
.layui-form-checked[lay-skin="primary"] i {
|
||||
color: #16638f;
|
||||
border-color: #888;
|
||||
display: block;
|
||||
font-weight: 700;
|
||||
position: absolute;
|
||||
|
||||
&::before {
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
.layui-form-radio:hover *,
|
||||
.layui-form-radioed,
|
||||
.layui-form-radioed>i {
|
||||
color: #16638f;
|
||||
}
|
||||
|
||||
.layui-input {
|
||||
background-color: #fff;
|
||||
border: 1px solid #ccc;
|
||||
border-top-color: rgb(204, 204, 204);
|
||||
border-radius: 2px;
|
||||
border-top-color: #888;
|
||||
box-sizing: border-box;
|
||||
font: 9pt Segoe UI, sans-serif;
|
||||
padding: 3px 4px 5px;
|
||||
}
|
||||
|
||||
.layui-input,
|
||||
.layui-select,
|
||||
.layui-textarea {
|
||||
height: unset
|
||||
}
|
||||
|
||||
.layui-form-label {
|
||||
padding: 3px 15px;
|
||||
font: 9pt Segoe UI, sans-serif;
|
||||
}
|
||||
|
||||
|
||||
.layuimini-form>.layui-form-item .required::after {
|
||||
top: 2px;
|
||||
}
|
||||
|
||||
.form-search .layui-input-inline input,
|
||||
.form-search .layui-input-inline select {
|
||||
height: unset;
|
||||
line-height: unset;
|
||||
}
|
||||
|
||||
.form-search .layui-form-label {
|
||||
height: unset;
|
||||
background: unset;
|
||||
text-align: right;
|
||||
border: unset;
|
||||
}
|
||||
|
||||
.layuimini-upload-btn {
|
||||
.layui-btn {
|
||||
height: 25px;
|
||||
line-height: 25px;
|
||||
}
|
||||
}
|
||||
95
public/static/admin/css/themes/default.css
Normal file
@ -0,0 +1,95 @@
|
||||
/*头部右侧背景色 headerRightBg */
|
||||
.layui-layout-admin .layui-header {
|
||||
background-color: #ffffff !important;
|
||||
}
|
||||
|
||||
/*头部右侧选中背景色 headerRightBgThis */
|
||||
.layui-layout-admin .layui-header .layuimini-header-content > ul > .layui-nav-item.layui-this, .layuimini-tool i:hover {
|
||||
background-color: #e4e4e4 !important;
|
||||
}
|
||||
|
||||
/*头部右侧字体颜色 headerRightColor */
|
||||
.layui-layout-admin .layui-header .layui-nav .layui-nav-item a {
|
||||
color: rgba(107, 107, 107, 0.7);
|
||||
}
|
||||
|
||||
/**头部右侧下拉字体颜色 headerRightChildColor */
|
||||
.layui-layout-admin .layui-header .layui-nav .layui-nav-item .layui-nav-child a {
|
||||
color: rgba(107, 107, 107, 0.7) !important;
|
||||
}
|
||||
|
||||
/*头部右侧鼠标选中 headerRightColorThis */
|
||||
.layui-header .layuimini-menu-header-pc.layui-nav .layui-nav-item a:hover, .layui-header .layuimini-header-menu.layuimini-pc-show.layui-nav .layui-this a {
|
||||
color: #565656 !important;
|
||||
}
|
||||
|
||||
/*头部右侧更多下拉颜色 headerRightNavMore */
|
||||
.layui-header .layui-nav .layui-nav-more {
|
||||
border-top-color: rgba(160, 160, 160, 0.7) !important;
|
||||
}
|
||||
|
||||
/*头部右侧更多下拉颜色 headerRightNavMore */
|
||||
.layui-header .layui-nav .layui-nav-mored, .layui-header .layui-nav-itemed > a .layui-nav-more {
|
||||
border-color: transparent transparent rgba(160, 160, 160, 0.7) !important;
|
||||
}
|
||||
|
||||
/**头部右侧更多下拉配置色 headerRightNavMoreBg headerRightNavMoreColor */
|
||||
.layui-header .layui-nav .layui-nav-child dd.layui-this a, .layui-header .layui-nav-child dd.layui-this, .layui-layout-admin .layui-header .layui-nav .layui-nav-item .layui-nav-child .layui-this a {
|
||||
background-color: #1E9FFF !important;
|
||||
color: #ffffff !important;
|
||||
}
|
||||
|
||||
/*头部缩放按钮样式 headerRightToolColor */
|
||||
.layui-layout-admin .layui-header .layuimini-tool i {
|
||||
color: #565656;
|
||||
}
|
||||
|
||||
/*logo背景颜色 headerLogoBg */
|
||||
.layui-layout-admin .layuimini-logo {
|
||||
background-color: #192027 !important;
|
||||
}
|
||||
|
||||
/*logo字体颜色 headerLogoColor */
|
||||
.layui-layout-admin .layuimini-logo h1 {
|
||||
color: rgb(191, 187, 187);
|
||||
}
|
||||
|
||||
/*左侧菜单更多下拉样式 leftMenuNavMore */
|
||||
.layuimini-menu-left .layui-nav .layui-nav-more, .layuimini-menu-left-zoom.layui-nav .layui-nav-more {
|
||||
border-top-color: rgb(191, 187, 187);
|
||||
}
|
||||
|
||||
/*左侧菜单更多下拉样式 leftMenuNavMore */
|
||||
.layuimini-menu-left .layui-nav .layui-nav-mored, .layuimini-menu-left .layui-nav-itemed > a .layui-nav-more, .layuimini-menu-left-zoom.layui-nav .layui-nav-mored, .layuimini-menu-left-zoom.layui-nav-itemed > a .layui-nav-more {
|
||||
border-color: transparent transparent rgb(191, 187, 187) !important;
|
||||
}
|
||||
|
||||
/*左侧菜单背景 leftMenuBg */
|
||||
.layui-side.layui-bg-black, .layui-side.layui-bg-black > .layuimini-menu-left > ul, .layuimini-menu-left-zoom > ul {
|
||||
background-color: #28333E !important;
|
||||
}
|
||||
|
||||
/*左侧菜单选中背景 leftMenuBgThis */
|
||||
.layuimini-menu-left .layui-nav-tree .layui-this, .layuimini-menu-left .layui-nav-tree .layui-this > a, .layuimini-menu-left .layui-nav-tree .layui-nav-child dd.layui-this, .layuimini-menu-left .layui-nav-tree .layui-nav-child dd.layui-this a, .layuimini-menu-left-zoom.layui-nav-tree .layui-this, .layuimini-menu-left-zoom.layui-nav-tree .layui-this > a, .layuimini-menu-left-zoom.layui-nav-tree .layui-nav-child dd.layui-this, .layuimini-menu-left-zoom.layui-nav-tree .layui-nav-child dd.layui-this a {
|
||||
background-color: #1E9FFF !important
|
||||
}
|
||||
|
||||
/*左侧菜单子菜单背景 leftMenuChildBg */
|
||||
.layuimini-menu-left .layui-nav-itemed > .layui-nav-child {
|
||||
background-color: #0c0f13 !important;
|
||||
}
|
||||
|
||||
/*左侧菜单字体颜色 leftMenuColor */
|
||||
.layuimini-menu-left .layui-nav .layui-nav-item a, .layuimini-menu-left-zoom.layui-nav .layui-nav-item a {
|
||||
color: rgb(191, 187, 187) !important;
|
||||
}
|
||||
|
||||
/*左侧菜单选中字体颜色 leftMenuColorThis */
|
||||
.layuimini-menu-left .layui-nav .layui-nav-item a:hover, .layuimini-menu-left .layui-nav .layui-this a, .layuimini-menu-left-zoom.layui-nav .layui-nav-item a:hover, .layuimini-menu-left-zoom.layui-nav .layui-this a {
|
||||
color: #ffffff !important;
|
||||
}
|
||||
|
||||
/**tab选项卡选中颜色 tabActiveColor */
|
||||
.layuimini-tab .layui-tab-title .layui-this .layuimini-tab-active {
|
||||
background-color: #1e9fff;
|
||||
}
|
||||
3050
public/static/admin/css/themes/index.css
Normal file
41
public/static/admin/css/themes/index.scss
Normal file
@ -0,0 +1,41 @@
|
||||
.elem-style-normal {
|
||||
@import 'normal';
|
||||
}
|
||||
|
||||
.elem-style-demo {
|
||||
@import 'demo';
|
||||
}
|
||||
|
||||
.elem-style-sicfi {
|
||||
@import 'sicfi';
|
||||
}
|
||||
|
||||
.elem-style-gtk {
|
||||
@import 'gtk';
|
||||
}
|
||||
|
||||
.elem-style-nes {
|
||||
@import 'nes';
|
||||
|
||||
}
|
||||
|
||||
.elem-style-win7 {
|
||||
@import 'win7';
|
||||
}
|
||||
.elem-style-neomorphic {
|
||||
@import 'neomorphic';
|
||||
}
|
||||
.elem-style-dark {
|
||||
@import 'dark';
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: "ark-pixel";
|
||||
src : url('./nes/ark-pixel-font-12px/ark-pixel-12px-zh_cn.ttf') format('truetype'),
|
||||
url('./nes/ark-pixel-font-12px/ark-pixel-12px-zh_hk.ttf') format('truetype'),
|
||||
url('./nes/ark-pixel-font-12px/ark-pixel-12px-zh_tr.ttf') format('truetype'),
|
||||
url('./nes/ark-pixel-font-12px/ark-pixel-12px-zh_tw.ttf') format('truetype'),
|
||||
url('./nes/ark-pixel-font-12px/ark-pixel-12px-ja.ttf') format('truetype'),
|
||||
url('./nes/ark-pixel-font-12px/ark-pixel-12px-ko.ttf') format('truetype'),
|
||||
url('./nes/ark-pixel-font-12px/ark-pixel-12px-latin.ttf') format('truetype');
|
||||
}
|
||||
@ -0,0 +1,94 @@
|
||||
Copyright (c) 2021, TakWolf (https://ark-pixel-font.takwolf.com),
|
||||
with Reserved Font Name 'Ark Pixel'.
|
||||
|
||||
This Font Software is licensed under the SIL Open Font License, Version 1.1.
|
||||
This license is copied below, and is also available with a FAQ at:
|
||||
http://scripts.sil.org/OFL
|
||||
|
||||
|
||||
-----------------------------------------------------------
|
||||
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
|
||||
-----------------------------------------------------------
|
||||
|
||||
PREAMBLE
|
||||
The goals of the Open Font License (OFL) are to stimulate worldwide
|
||||
development of collaborative font projects, to support the font creation
|
||||
efforts of academic and linguistic communities, and to provide a free and
|
||||
open framework in which fonts may be shared and improved in partnership
|
||||
with others.
|
||||
|
||||
The OFL allows the licensed fonts to be used, studied, modified and
|
||||
redistributed freely as long as they are not sold by themselves. The
|
||||
fonts, including any derivative works, can be bundled, embedded,
|
||||
redistributed and/or sold with any software provided that any reserved
|
||||
names are not used by derivative works. The fonts and derivatives,
|
||||
however, cannot be released under any other type of license. The
|
||||
requirement for fonts to remain under this license does not apply
|
||||
to any document created using the fonts or their derivatives.
|
||||
|
||||
DEFINITIONS
|
||||
"Font Software" refers to the set of files released by the Copyright
|
||||
Holder(s) under this license and clearly marked as such. This may
|
||||
include source files, build scripts and documentation.
|
||||
|
||||
"Reserved Font Name" refers to any names specified as such after the
|
||||
copyright statement(s).
|
||||
|
||||
"Original Version" refers to the collection of Font Software components as
|
||||
distributed by the Copyright Holder(s).
|
||||
|
||||
"Modified Version" refers to any derivative made by adding to, deleting,
|
||||
or substituting -- in part or in whole -- any of the components of the
|
||||
Original Version, by changing formats or by porting the Font Software to a
|
||||
new environment.
|
||||
|
||||
"Author" refers to any designer, engineer, programmer, technical
|
||||
writer or other person who contributed to the Font Software.
|
||||
|
||||
PERMISSION & CONDITIONS
|
||||
Permission is hereby granted, free of charge, to any person obtaining
|
||||
a copy of the Font Software, to use, study, copy, merge, embed, modify,
|
||||
redistribute, and sell modified and unmodified copies of the Font
|
||||
Software, subject to the following conditions:
|
||||
|
||||
1) Neither the Font Software nor any of its individual components,
|
||||
in Original or Modified Versions, may be sold by itself.
|
||||
|
||||
2) Original or Modified Versions of the Font Software may be bundled,
|
||||
redistributed and/or sold with any software, provided that each copy
|
||||
contains the above copyright notice and this license. These can be
|
||||
included either as stand-alone text files, human-readable headers or
|
||||
in the appropriate machine-readable metadata fields within text or
|
||||
binary files as long as those fields can be easily viewed by the user.
|
||||
|
||||
3) No Modified Version of the Font Software may use the Reserved Font
|
||||
Name(s) unless explicit written permission is granted by the corresponding
|
||||
Copyright Holder. This restriction only applies to the primary font name as
|
||||
presented to the users.
|
||||
|
||||
4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
|
||||
Software shall not be used to promote, endorse or advertise any
|
||||
Modified Version, except to acknowledge the contribution(s) of the
|
||||
Copyright Holder(s) and the Author(s) or with their explicit written
|
||||
permission.
|
||||
|
||||
5) The Font Software, modified or unmodified, in part or in whole,
|
||||
must be distributed entirely under this license, and must not be
|
||||
distributed under any other license. The requirement for fonts to
|
||||
remain under this license does not apply to any document created
|
||||
using the Font Software.
|
||||
|
||||
TERMINATION
|
||||
This license becomes null and void if any of the above conditions are
|
||||
not met.
|
||||
|
||||
DISCLAIMER
|
||||
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
|
||||
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
|
||||
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
||||
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
|
||||
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
|
||||
OTHER DEALINGS IN THE FONT SOFTWARE.
|
||||
139
public/static/admin/css/welcome.css
Normal file
@ -0,0 +1,139 @@
|
||||
.layui-card {
|
||||
border: 1px solid #f2f2f2;
|
||||
border-radius: 5px;
|
||||
}
|
||||
|
||||
.dark .layui-card {
|
||||
border: 1px solid #363636;
|
||||
border-radius: 5px;
|
||||
}
|
||||
|
||||
.icon {
|
||||
margin-right: 10px;
|
||||
color: #1aa094;
|
||||
}
|
||||
|
||||
.icon-cray {
|
||||
color: #ffb800 !important;
|
||||
}
|
||||
|
||||
.icon-blue {
|
||||
color: #1e9fff !important;
|
||||
}
|
||||
|
||||
.icon-tip {
|
||||
color: #ff5722 !important;
|
||||
}
|
||||
|
||||
.layuimini-qiuck-module {
|
||||
text-align: center;
|
||||
margin-top: 10px
|
||||
}
|
||||
|
||||
.layuimini-qiuck-module a i {
|
||||
display: inline-block;
|
||||
width: 80%;
|
||||
height: 60px;
|
||||
line-height: 60px;
|
||||
text-align: center;
|
||||
border-radius: 2px;
|
||||
font-size: 30px;
|
||||
background-color: #F8F8F8;
|
||||
color: #333;
|
||||
transition: all .3s;
|
||||
-webkit-transition: all .3s;
|
||||
}
|
||||
|
||||
.layuimini-qiuck-module a cite {
|
||||
position: relative;
|
||||
top: 2px;
|
||||
display: block;
|
||||
text-overflow: ellipsis;
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
.welcome-module {
|
||||
width: 100%;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.panel {
|
||||
border: 1px solid transparent;
|
||||
border-radius: 3px;
|
||||
-webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, .05);
|
||||
box-shadow: 0 1px 1px rgba(0, 0, 0, .05)
|
||||
}
|
||||
|
||||
.panel-body {
|
||||
padding: 10px
|
||||
}
|
||||
|
||||
.panel-title {
|
||||
margin-top: 0;
|
||||
margin-bottom: 0;
|
||||
font-size: 12px;
|
||||
color: inherit
|
||||
}
|
||||
|
||||
.label {
|
||||
display: inline;
|
||||
padding: .2em .6em .3em;
|
||||
font-size: 75%;
|
||||
font-weight: 700;
|
||||
line-height: 1;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
white-space: nowrap;
|
||||
vertical-align: baseline;
|
||||
border-radius: .25em;
|
||||
margin-top: .3em;
|
||||
}
|
||||
|
||||
.layui-red {
|
||||
color: red
|
||||
}
|
||||
|
||||
.main_btn > p {
|
||||
height: 40px;
|
||||
}
|
||||
|
||||
/*.layui-bg-number {*/
|
||||
/* background-color: #F8F8F8;*/
|
||||
/*}*/
|
||||
|
||||
.layuimini-notice:hover {
|
||||
background: #f6f6f6;
|
||||
}
|
||||
|
||||
.layuimini-notice {
|
||||
padding: 7px 16px;
|
||||
clear: both;
|
||||
font-size: 12px !important;
|
||||
cursor: pointer;
|
||||
position: relative;
|
||||
transition: background 0.2s ease-in-out;
|
||||
}
|
||||
|
||||
.layuimini-notice-title, .layuimini-notice-label {
|
||||
padding-right: 70px !important;
|
||||
text-overflow: ellipsis !important;
|
||||
overflow: hidden !important;
|
||||
white-space: nowrap !important;
|
||||
}
|
||||
|
||||
.layuimini-notice-title {
|
||||
line-height: 28px;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
.layuimini-notice-extra {
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
margin-top: -8px;
|
||||
right: 16px;
|
||||
display: inline-block;
|
||||
height: 16px;
|
||||
color: #999;
|
||||
}
|
||||
BIN
public/static/admin/fonts/iconfont/iconfont-1.eot
Normal file
83
public/static/admin/fonts/iconfont/iconfont-1.svg
Normal file
@ -0,0 +1,83 @@
|
||||
<?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" >
|
||||
<!--
|
||||
2013-9-30: Created.
|
||||
-->
|
||||
<svg>
|
||||
<metadata>
|
||||
Created by iconfont
|
||||
</metadata>
|
||||
<defs>
|
||||
|
||||
<font id="iconfont" horiz-adv-x="1024" >
|
||||
<font-face
|
||||
font-family="iconfont"
|
||||
font-weight="500"
|
||||
font-stretch="normal"
|
||||
units-per-em="1024"
|
||||
ascent="896"
|
||||
descent="-128"
|
||||
/>
|
||||
<missing-glyph />
|
||||
|
||||
<glyph glyph-name="pageedit" unicode="" d="M313.291332 159.658536l207.526497 0 0-31.927153-207.526497 0 0 31.927153ZM313.291332 478.930069l383.125841 0 0-31.927153-383.125841 0 0 31.927153ZM313.291332 622.60226l383.125841 0 0-31.927153-383.125841 0 0 31.927153ZM313.291332 319.294302l207.526497 0 0-31.927153-207.526497 0 0 31.927153ZM185.582719 39.93171l0 654.506644c0 22.01234 17.896602 39.908942 39.908942 39.908942l590.652338 0c22.01234 0 39.908942-17.896602 39.908942-39.908942l0-199.544709 47.89073 0 0 199.544709c0 48.40443-39.395242 87.799672-87.799672 87.799672l-590.652338 0c-48.406476 0-87.799672-39.395242-87.799672-87.799672l0-654.506644c0-48.40443 39.393195-87.799672 87.799672-87.799672l199.544709 0 0 47.89073-199.544709 0C203.479321 0.022769 185.582719 17.919371 185.582719 39.93171zM974.711434 350.161311l-39.957037 39.971363-39.954991 39.940664c-7.357572 7.357572-19.284205 7.357572-26.641777 0L538.455535 100.371244c-2.112104-1.730411-3.748371-4.068665-4.589528-6.873548l-36.488029-121.394814c-1.544169-5.160533-0.016373-10.523681 3.538593-14.078647l0.989537-0.763386 0.77055-0.981351c3.554966-3.554966 8.902764-5.082762 14.062274-3.554966l121.394814 36.494169c2.844791 0.858554 5.213745 2.52552 6.938016 4.677533l329.638649 329.638649C982.061842 330.877105 982.061842 342.818065 974.711434 350.161311zM626.436332 15.207609l-95.197152-28.622898 28.622898 95.235015 255.020184 255.027347 66.596767-66.598814L626.436332 15.207609zM941.412027 330.190467l-46.611597-46.611597-66.590628 66.598814 46.605457 46.596248c3.677762 3.679809 9.641591 3.679809 13.319353 0.016373l26.892487-26.892487 26.384927-26.393113C945.090812 339.824895 945.090812 333.854926 941.412027 330.190467z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
<glyph glyph-name="page" unicode="" d="M809.021787-20.341025l-590.652338 0c-48.40443 0-87.799672 39.395242-87.799672 87.799672l0 654.506644c0 48.40443 39.395242 87.799672 87.799672 87.799672l590.652338 0c48.40443 0 87.799672-39.395242 87.799672-87.799672l0-654.506644C896.821459 19.054217 857.426217-20.341025 809.021787-20.341025zM218.36945 761.874233c-22.01234 0-39.908942-17.896602-39.908942-39.908942l0-654.506644c0-22.01234 17.896602-39.908942 39.908942-39.908942l590.652338 0c22.01234 0 39.908942 17.896602 39.908942 39.908942l0 654.506644c0 22.01234-17.896602 39.908942-39.908942 39.908942L218.36945 761.874233zM322.132698 187.185472l383.125841 0 0-31.927153-383.125841 0 0 31.927153ZM322.132698 506.457006l383.125841 0 0-31.927153-383.125841 0 0 31.927153ZM322.132698 650.129196l383.125841 0 0-31.927153-383.125841 0 0 31.927153ZM322.132698 346.821239l383.125841 0 0-31.927153-383.125841 0 0 31.927153Z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
<glyph glyph-name="menu" unicode="" d="M771.87584-5.65248l-111.3344 0c-61.47584 0-111.32928 49.83808-111.32928 111.32928l0 111.32928c0 61.48096 49.85344 111.32928 111.32928 111.32928l111.3344 0c61.48096 0 111.32928-49.84832 111.32928-111.32928l0-111.32928C883.20512 44.19072 833.3568-5.65248 771.87584-5.65248zM827.52512 217.0112c0 30.74048-24.91392 55.64928-55.64928 55.64928l-111.3344 0c-30.73536 0-55.66976-24.9088-55.66976-55.64928l0-111.32928c0-30.75072 24.9344-55.68 55.66976-55.68l111.3344 0c30.73536 0 55.64928 24.92928 55.64928 55.68L827.52512 217.0112zM771.87584 773.65248c61.48096 0 111.32928-49.84832 111.32928-111.32928l0-111.3344c0-61.48096-49.84832-111.32928-111.32928-111.32928l-111.3344 0c-61.47584 0-111.32928 49.8432-111.32928 111.32928L549.21216 662.3232c0 61.48096 49.85344 111.32928 111.32928 111.32928M827.52512 662.3232c0 30.74048-24.91392 55.66464-55.64928 55.66464l-111.3344 0c-30.73536 0-55.66976-24.91904-55.66976-55.66464l0-111.3344c0-30.74048 24.9344-55.66464 55.66976-55.66464l111.3344 0c30.73536 0 55.64928 24.92416 55.64928 55.66464L827.52512 662.3232zM326.53824-5.65248 215.2192-5.65248c-61.48608 0-111.3344 49.83808-111.3344 111.32928l0 111.32928c0 61.48096 49.84832 111.32928 111.3344 111.32928l111.31904 0c61.50144 0 111.34464-49.84832 111.34464-111.32928l0-111.32928C437.88288 44.19072 388.0448-5.65248 326.53824-5.65248zM382.21312 217.0112c0 30.74048-24.91392 55.64928-55.67488 55.64928L215.2192 272.66048c-30.7456 0-55.66976-24.9088-55.66976-55.64928l0-111.32928c0-30.75072 24.91904-55.68 55.66976-55.68l111.31904 0c30.76096 0 55.67488 24.92928 55.67488 55.68L382.21312 217.0112zM326.53824 773.65248c61.50144 0 111.34464-49.84832 111.34464-111.32928l0-111.3344c0-61.48096-49.8432-111.32928-111.34464-111.32928L215.2192 439.65952c-61.48608 0-111.3344 49.8432-111.3344 111.32928L103.8848 662.3232c0 61.48096 49.84832 111.32928 111.3344 111.32928M382.21312 662.3232c0 30.74048-24.91392 55.66464-55.67488 55.66464L215.2192 717.98784c-30.7456 0-55.66976-24.91904-55.66976-55.66464l0-111.3344c0-30.74048 24.91904-55.66464 55.66976-55.66464l111.31904 0c30.76096 0 55.67488 24.92416 55.67488 55.66464L382.21312 662.3232z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
<glyph glyph-name="menu3caidan3" unicode="" d="M201.447035 612.363058c-15.913435-15.913435-34.482349-23.86964-55.69958-23.86964s-39.778982 7.956206-55.691393 23.86964c-15.913435 15.913435-23.873734 34.478256-23.873734 55.695486 0 21.176298 7.960299 39.783075 23.873734 55.695486s34.474163 23.86964 55.691393 23.86964 39.786145-7.956206 55.69958-23.86964 23.865547-34.520211 23.865547-55.695486C225.312582 646.841314 217.36047 628.276493 201.447035 612.363058zM201.447035 325.927373c-15.913435-15.913435-34.482349-23.86964-55.69958-23.86964s-39.778982 7.956206-55.691393 23.86964c-15.913435 15.913435-23.873734 34.478256-23.873734 55.695486 0 21.176298 7.960299 39.783075 23.873734 55.695486 15.913435 15.913435 34.474163 23.86964 55.691393 23.86964s39.786145-7.956206 55.69958-23.86964c15.913435-15.913435 23.865547-34.520211 23.865547-55.695486C225.312582 360.405629 217.36047 341.840808 201.447035 325.927373zM201.447035 39.492712c-15.913435-15.911388-34.482349-23.871687-55.69958-23.871687s-39.778982 7.960299-55.691393 23.871687c-15.913435 15.913435-23.873734 34.478256-23.873734 55.695486 0 21.176298 7.960299 39.783075 23.873734 55.695486 15.913435 15.913435 34.474163 23.86964 55.691393 23.86964s39.786145-7.956206 55.69958-23.86964c15.913435-15.913435 23.865547-34.520211 23.865547-55.695486C225.312582 73.970968 217.36047 55.405123 201.447035 39.492712zM179.559539 701.873698c-9.276271 9.241478-20.546965 13.924127-33.812083 13.924127-13.256932 0-24.535813-4.682649-33.812083-13.924127-9.284457-9.283434-13.927197-20.596084-13.927197-33.815153 0-13.261025 4.64274-24.573675 13.927197-33.815153 9.276271-9.282411 20.555152-13.924127 33.812083-13.924127 13.265118 0 24.535813 4.641717 33.812083 13.924127 9.284457 9.241478 13.927197 20.554128 13.927197 33.815153C193.486736 681.277614 188.843996 692.591287 179.559539 701.873698zM179.559539 415.439036c-9.276271 9.241478-20.546965 13.924127-33.812083 13.924127-13.256932 0-24.535813-4.682649-33.812083-13.924127-9.284457-9.283434-13.927197-20.596084-13.927197-33.815153 0-13.261025 4.64274-24.573675 13.927197-33.815153 9.276271-9.282411 20.555152-13.924127 33.812083-13.924127 13.265118 0 24.535813 4.641717 33.812083 13.924127 9.284457 9.241478 13.927197 20.554128 13.927197 33.815153C193.486736 394.842952 188.843996 406.155603 179.559539 415.439036zM179.559539 129.003352c-9.276271 9.241478-20.546965 13.924127-33.812083 13.924127-13.256932 0-24.535813-4.682649-33.812083-13.924127-9.284457-9.283434-13.927197-20.596084-13.927197-33.815153 0-13.261025 4.64274-24.573675 13.927197-33.815153 9.276271-9.282411 20.555152-13.924127 33.812083-13.924127 13.265118 0 24.535813 4.641717 33.812083 13.924127 9.284457 9.241478 13.927197 20.554128 13.927197 33.815153C193.486736 108.407268 188.843996 119.720941 179.559539 129.003352zM941.40077 652.146133 336.704578 652.146133c-10.608615 0-15.913435 5.262864-15.913435 15.913435 0 10.608615 5.304819 15.913435 15.913435 15.913435l604.696192 0c10.608615 0 15.912411-5.304819 15.912411-15.913435C957.314205 657.407973 952.009386 652.146133 941.40077 652.146133zM941.40077 365.710448 336.704578 365.710448c-10.608615 0-15.913435 5.262864-15.913435 15.913435 0 10.608615 5.304819 15.913435 15.913435 15.913435l604.696192 0c10.608615 0 15.912411-5.304819 15.912411-15.913435C957.314205 370.973312 952.009386 365.710448 941.40077 365.710448zM941.40077 79.274764 336.704578 79.274764c-10.608615 0-15.913435 5.262864-15.913435 15.913435 0 10.608615 5.304819 15.913435 15.913435 15.913435l604.696192 0c10.608615 0 15.912411-5.304819 15.912411-15.913435C957.314205 84.537627 952.009386 79.274764 941.40077 79.274764z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
<glyph glyph-name="cart" unicode="" d="M235.097303 196.866982C247.384597 160.417152 286.382106 132.376068 324.772759 132.376068L861.658537 132.376068 880.429732 132.376068 885.649214 150.541854 1009.08775 580.154957C1021.388907 622.967661 993.187631 660.786325 949.051586 660.786325L424.585365 660.786325C410.791718 660.786325 399.609756 649.520738 399.609756 635.623932 399.609756 621.727125 410.791718 610.461538 424.585365 610.461538L949.051586 610.461538C959.924 610.461538 964.161052 604.779539 961.106394 594.148171L837.667859 164.535068 861.658537 182.700855 324.772759 182.700855C307.742153 182.700855 287.789837 197.047529 282.395194 213.050549L73.600164 832.433664C69.16437 845.592294 54.980454 852.636656 41.919502 848.167687 28.858551 843.698719 21.86648 829.408727 26.302275 816.250097L235.097303 196.866982ZM399.609756-6.017094C399.609756 49.570129 354.881911 94.632478 299.707317 94.632478 244.532723 94.632478 199.804878 49.570129 199.804878-6.017094 199.804878-61.604318 244.532723-106.666667 299.707317-106.666667 354.881911-106.666667 399.609756-61.604318 399.609756-6.017094ZM249.756098-6.017094C249.756098 21.776518 272.120021 44.307693 299.707317 44.307693 327.294613 44.307693 349.658537 21.776518 349.658537-6.017094 349.658537-33.810705 327.294613-56.341879 299.707317-56.341879 272.120021-56.341879 249.756098-33.810705 249.756098-6.017094ZM924.097562-6.017094C924.097562 49.570129 879.369715 94.632478 824.195121 94.632478 769.020529 94.632478 724.292683 49.570129 724.292683-6.017094 724.292683-61.604318 769.020529-106.666667 824.195121-106.666667 879.369715-106.666667 924.097562-61.604318 924.097562-6.017094ZM774.243902-6.017094C774.243902 21.776518 796.607825 44.307693 824.195121 44.307693 851.782419 44.307693 874.146342 21.776518 874.146342-6.017094 874.146342-33.810705 851.782419-56.341879 824.195121-56.341879 796.607825-56.341879 774.243902-33.810705 774.243902-6.017094Z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
<glyph glyph-name="refresh" unicode="" d="M936.571429 292.571429q0-2.857143-0.571429-4-36.571429-153.142857-153.142857-248.285714t-273.142857-95.142857q-83.428571 0-161.428571 31.428571t-139.142857 89.714286l-73.714286-73.714286q-10.857143-10.857143-25.714286-10.857143t-25.714286 10.857143-10.857143 25.714286l0 256q0 14.857143 10.857143 25.714286t25.714286 10.857143l256 0q14.857143 0 25.714286-10.857143t10.857143-25.714286-10.857143-25.714286l-78.285714-78.285714q40.571429-37.714286 92-58.285714t106.857143-20.571429q76.571429 0 142.857143 37.142857t106.285714 102.285714q6.285714 9.714286 30.285714 66.857143 4.571429 13.142857 17.142857 13.142857l109.714286 0q7.428571 0 12.857143-5.428571t5.428571-12.857143zm14.285714 457.142857l0-256q0-14.857143-10.857143-25.714286t-25.714286-10.857143l-256 0q-14.857143 0-25.714286 10.857143t-10.857143 25.714286 10.857143 25.714286l78.857143 78.857143q-84.571429 78.285714-199.428571 78.285714-76.571429 0-142.857143-37.142857t-106.285714-102.285714q-6.285714-9.714286-30.285714-66.857143-4.571429-13.142857-17.142857-13.142857l-113.714286 0q-7.428571 0-12.857143 5.428571t-5.428571 12.857143l0 4q37.142857 153.142857 154.285714 248.285714t274.285714 95.142857q83.428571 0 162.285714-31.714286t140-89.428571l74.285714 73.714286q10.857143 10.857143 25.714286 10.857143t25.714286-10.857143 10.857143-25.714286z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
<glyph glyph-name="car" unicode="" d="M845.590658 44.07917c-27.77253 0-49.455365 11.378142-62.705134 32.905434-10.428513 16.942881-15.715937 40.441061-15.715937 69.841671l0 42.915415L285.710161 189.741691l0-42.915415c0-29.153994-5.809309-52.780087-17.266245-70.223365-13.976316-21.277606-36.027541-32.523741-63.770396-32.523741-51.880601 0-84.10963 39.370683-84.10963 102.747105l0 42.915415L73.560366 189.741691c-16.765849 0-29.899984 13.148461-29.899984 29.93273L43.660382 394.470469c0 31.397081 12.18553 60.870346 34.311457 82.992179 22.127973 22.122857 51.610448 34.305317 83.017762 34.305317l0.741897 0 44.89142 179.101097c15.750729 63.952544 77.541027 112.224967 143.713123 112.224967l349.591073 0c66.172095 0 127.962393-48.272423 143.728472-112.286366l44.875047-179.039699 0.74292 0c31.407314 0 60.890812-12.183484 83.017762-34.305317 22.12695-22.121833 34.31248-51.595099 34.31248-82.992179l0-174.795025c0-16.784268-13.134135-29.93273-29.899984-29.93273l-50.664913 0 0-42.915415C926.038898 81.529107 896.717082 44.07917 845.590658 44.07917zM255.010975 220.4419l542.856775 0 0-73.614601c0-72.04792 34.670637-72.04792 47.722908-72.04792 17.308201 0 29.66053 6.082532 37.762045 18.59552 7.841595 12.109806 11.987009 30.592762 11.987009 53.452399l0 73.614601 80.563874 0 0.001023 174.028569c0 47.750537-38.863123 86.59831-86.631056 86.59831l-24.696472 0L813.863049 683.405067c-12.502755 50.759057-61.477166 88.989777-113.935935 88.989777L350.33604 772.394844c-52.458769 0-101.43318-38.23072-113.919563-88.928379l-50.730405-202.397686L160.990624 481.068779c-47.768957 0-86.631056-38.847773-86.631056-86.59831l0-174.028569 76.902484 0 0-73.614601c0-26.907836 6.939039-72.04792 53.410444-72.04792 33.401738 0 50.337455 24.240077 50.337455 72.04792L255.009951 220.4419zM847.566662 226.186741c-56.922431 0-103.233176 46.292326-103.233176 103.195314 0 56.901964 46.310745 103.195314 103.233176 103.195314 56.923454 0 103.234199-46.293349 103.234199-103.195314C950.799838 272.479067 904.490116 226.186741 847.566662 226.186741zM847.566662 401.878183c-39.994899 0-72.53399-32.521694-72.53399-72.496128 0-39.97341 32.53909-72.496128 72.53399-72.496128 39.995923 0 72.535013 32.521694 72.535013 72.496128C920.100652 369.356488 887.562585 401.878183 847.566662 401.878183zM198.5081 226.186741c-56.922431 0-103.233176 46.292326-103.233176 103.195314 0 56.901964 46.310745 103.195314 103.233176 103.195314 56.924477 0 103.236246-46.293349 103.236246-103.195314C301.744345 272.479067 255.432577 226.186741 198.5081 226.186741zM198.5081 401.878183c-39.994899 0-72.53399-32.521694-72.53399-72.496128 0-39.97341 32.53909-72.496128 72.53399-72.496128 39.996946 0 72.53706 32.521694 72.53706 72.496128C271.045159 369.356488 238.505046 401.878183 198.5081 401.878183zM815.368332 506.502032 218.155579 506.502032l53.717436 215.46019c3.551896 12.935614 20.717857 26.114774 34.012651 26.114774l421.751556 0c13.295817 0 30.461779-13.180184 34.012651-26.115797l0.092098-0.350994L815.368332 506.502032zM257.447467 537.201218l518.628978 0-43.823088 175.785585c-1.12973 1.475608-3.938706 3.681856-5.594415 4.39203L306.863946 717.378833c-1.656733-0.709151-4.464685-2.916423-5.594415-4.39203L257.447467 537.201218z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
<glyph glyph-name="controls" unicode="" d="M146.285714 144.822857V859.428571a18.285714 18.285714 0 1 1-36.571428 0v-714.605714c-61.933714-8.923429-109.714286-62.189714-109.714286-126.537143 0-70.564571 57.417143-128 128-128s128 57.435429 128 128c0 64.347429-47.780571 117.613714-109.714286 126.537143zM128-73.142857c-50.413714 0-91.428571 41.014857-91.428571 91.428571s41.014857 91.428571 91.428571 91.428572 91.428571-41.014857 91.428571-91.428572-41.014857-91.428571-91.428571-91.428571zM530.285714 517.577143V859.428571a18.285714 18.285714 0 1 1-36.571428 0v-340.699428c-65.865143-7.241143-117.284571-63.195429-117.284572-130.944s51.419429-123.702857 117.284572-130.944V-91.428571a18.285714 18.285714 0 1 1 36.571428 0V257.993143c62.171429 10.550857 109.714286 64.658286 109.714286 129.792s-47.542857 119.241143-109.714286 129.792zM508.214857 292.571429c-52.498286 0-95.213714 42.715429-95.213714 95.213714s42.697143 95.213714 95.213714 95.213714S603.428571 440.283429 603.428571 387.785143 560.713143 292.571429 508.214857 292.571429zM1024 749.714286c0 70.564571-57.417143 128-128 128s-128-57.435429-128-128c0-64.347429 47.780571-117.613714 109.714286-126.537143V-91.428571a18.285714 18.285714 0 1 1 36.571428 0V623.177143c61.933714 8.923429 109.714286 62.189714 109.714286 126.537143z m-128-91.428572c-50.413714 0-91.428571 41.014857-91.428571 91.428572s41.014857 91.428571 91.428571 91.428571 91.428571-41.014857 91.428571-91.428571-41.014857-91.428571-91.428571-91.428572z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
<glyph glyph-name="set" unicode="" d="M588.288-63.488H432.128l-40.96 143.872-10.752 4.608-131.072-72.704L138.752 122.88l72.704 130.56-4.608 10.752-143.872 40.96V461.824l143.872 40.96 4.608 10.752-72.704 131.072 110.592 110.592 131.072-72.704 10.752 4.608 40.96 143.872h156.16l40.96-143.872 10.752-4.608 131.072 72.704 110.592-110.592L808.96 514.048l4.608-10.752 143.872-40.96v-156.16l-143.872-40.96-4.608-10.752 72.704-130.56-110.592-110.592-141.312 77.312 22.528 40.96 110.592-61.44 60.928 60.928-67.072 120.832 5.12 10.752c4.608 9.216 8.704 18.944 11.776 28.672l4.096 11.264 133.12 37.888V426.496l-133.12 37.888-4.096 11.264c-3.584 9.728-7.168 18.944-11.776 28.672l-5.12 10.752 67.072 120.832-60.928 61.44L642.048 629.76l-10.752 5.12c-9.216 4.608-18.944 8.704-28.672 11.776l-11.264 4.096-37.888 133.12H467.456l-37.888-133.12-11.264-4.096c-9.728-3.584-19.456-7.168-28.672-11.776L378.88 629.76 257.536 697.344 196.608 636.416l67.072-120.832-5.12-10.752c-4.608-9.728-8.704-18.944-11.776-28.672l-4.096-11.264-133.12-37.888v-86.016l133.12-37.888 4.096-11.264c3.584-9.728 7.168-18.944 11.776-28.672l5.12-10.752-67.072-120.832 60.928-60.928 120.832 67.072 10.752-5.12c9.216-4.608 18.944-8.704 28.672-11.776l11.264-4.096 37.888-133.12H552.96l29.184 101.376 45.056-12.8-38.912-135.68z m-77.824 239.616c-114.688 0-207.872 93.184-207.872 207.872 0 114.688 93.184 207.872 207.872 207.872 114.688 0 207.872-93.184 207.872-207.872-0.512-114.688-93.696-207.872-207.872-207.872z m0 356.352c-81.92 0-148.992-66.56-148.992-148.992 0-81.92 66.56-148.992 148.992-148.992 81.92 0 148.992 66.56 148.992 148.992C658.944 465.92 592.384 532.48 510.464 532.48z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
<glyph glyph-name="system" unicode="" d="M947.188 60.073l-50.079 35.055c-18.559 12.992-56.418 22.725-85.694 22.725H585.19v79.844h288.761c2.2 0 4 1.8 4 4V739.298c0 2.2-1.8 4-4 4H176.663c-2.2 0-4-1.8-4-4v-537.601c0-2.2 1.8-4 4-4h302.069v-79.844H212.585c-29.276 0-67.134-9.734-85.694-22.725l-50.079-35.055c-26.411-18.488-17.538-35.371 22.786-35.371h824.803c40.324 0 49.198 16.883 22.787 35.371zM427.175 404.992a16.001 16.001 0 0 0-27.018-4.917l-66.792 76.29-30.074-34.372a16.002 16.002 0 0 0-12.042-5.464h-38.742c-8.836 0-16 7.164-16 16s7.164 16 16 16h31.481l37.331 42.666a16 16 0 0 0 24.08 0.004l61.215-69.92 60.521 161.261a16 16 0 0 0 30.347-1.168l41.855-144.388c0.045-0.156 0.088-0.313 0.128-0.47l17.727-68.934 53.023 135.33a16.001 16.001 0 0 0 14.896 10.163h0.1a16 16 0 0 0 14.87-10.347l35.146-93.072 36.371 46.095a16 16 0 0 0 12.561 6.089H784.8c8.837 0 16-7.164 16-16s-7.163-16-16-16h-52.885l-49.098-62.224a16 16 0 1 0-27.529 4.259l-30.451 80.64-55.913-142.705a16 16 0 0 0-30.393 1.852l-29.996 116.649-28.371 97.873-52.989-141.19z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
<glyph glyph-name="menu1" unicode="" d="M384 416H192c-52.8 0-96 43.2-96 96V704c0 52.8 43.2 96 96 96h192c52.8 0 96-43.2 96-96v-192c0-52.8-43.2-96-96-96zM192 736c-17.6 0-32-14.4-32-32v-192c0-17.6 14.4-32 32-32h192c17.6 0 32 14.4 32 32V704c0 17.6-14.4 32-32 32H192zM832 416H640c-52.8 0-96 43.2-96 96V704c0 52.8 43.2 96 96 96h192c52.8 0 96-43.2 96-96v-192c0-52.8-43.2-96-96-96zM640 736c-17.6 0-32-14.4-32-32v-192c0-17.6 14.4-32 32-32h192c17.6 0 32 14.4 32 32V704c0 17.6-14.4 32-32 32H640zM384-32H192c-52.8 0-96 43.2-96 96V256c0 52.8 43.2 96 96 96h192c52.8 0 96-43.2 96-96v-192c0-52.8-43.2-96-96-96zM192 288c-17.6 0-32-14.4-32-32v-192c0-17.6 14.4-32 32-32h192c17.6 0 32 14.4 32 32V256c0 17.6-14.4 32-32 32H192zM832-32H640c-52.8 0-96 43.2-96 96V256c0 52.8 43.2 96 96 96h192c52.8 0 96-43.2 96-96v-192c0-52.8-43.2-96-96-96zM640 288c-17.6 0-32-14.4-32-32v-192c0-17.6 14.4-32 32-32h192c17.6 0 32 14.4 32 32V256c0 17.6-14.4 32-32 32H640z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
<glyph glyph-name="IDcard" unicode="" d="M547.84 271.36c-4.096 26.624-22.528 70.656-72.704 89.088h-1.024c-5.12 2.048-8.192 3.072-12.288 4.096 3.072 4.096 5.12 8.192 7.168 12.288 4.096 3.072 7.168 6.144 11.264 12.288 9.216 14.336 18.432 44.032 11.264 65.536-1.024 3.072-3.072 7.168-5.12 10.24-2.048 27.648-12.288 51.2-29.696 68.608-18.432 18.432-43.008 28.672-71.68 28.672s-53.248-10.24-71.68-28.672c-17.408-17.408-27.648-41.984-29.696-69.632-2.048-3.072-3.072-6.144-4.096-9.216-8.192-22.528 2.048-52.224 11.264-65.536 3.072-4.096 6.144-8.192 10.24-11.264 2.048-4.096 5.12-9.216 7.168-13.312-1.024-1.024-2.048-1.024-4.096-2.048l-7.168-2.048c-50.176-17.408-68.608-56.32-72.704-83.968v-6.144c0-14.336 11.264-25.6 25.6-25.6s25.6 11.264 25.6 25.6V271.36c2.048 11.264 10.24 30.72 37.888 40.96l7.168 2.048c20.48 7.168 47.104 15.36 51.2 41.984l2.048 13.312-9.216 9.216c-8.192 8.192-14.336 17.408-19.456 26.624l-4.096 10.24-7.168 2.048c-2.048 5.12-5.12 14.336-5.12 18.432l6.144 5.12v11.264c0 18.432 6.144 33.792 15.36 43.008 8.192 8.192 20.48 13.312 34.816 13.312s26.624-4.096 34.816-13.312c9.216-9.216 15.36-24.576 15.36-43.008v-12.288l7.168-5.12c0-4.096-2.048-12.288-4.096-17.408l-7.168-2.048-5.12-11.264c-6.144-12.288-14.336-21.504-19.456-26.624l-11.264-11.264 4.096-15.36c7.168-22.528 31.744-32.768 57.344-40.96 24.576-9.216 33.792-27.648 37.888-39.936v-2.048c0-14.336 11.264-25.6 25.6-25.6s25.6 11.264 25.6 25.6v1.024h2.048zM609.28 475.136H768c16.384 0 29.696 13.312 29.696 29.696 0 16.384-13.312 29.696-29.696 29.696H609.28c-16.384 0-29.696-13.312-29.696-29.696 0-16.384 13.312-29.696 29.696-29.696zM609.28 365.568H768c16.384 0 29.696 13.312 29.696 29.696 0 16.384-13.312 29.696-29.696 29.696H609.28c-16.384 0-29.696-13.312-29.696-29.696 0-16.384 13.312-29.696 29.696-29.696zM609.28 257.024H768c16.384 0 29.696 13.312 29.696 29.696 0 16.384-13.312 29.696-29.696 29.696H609.28c-16.384 0-29.696-13.312-29.696-29.696 0-16.384 13.312-29.696 29.696-29.696zM894.976 400.384m-35.84 0a35.84 35.84 0 1 1 71.68 0 35.84 35.84 0 1 1-71.68 0ZM815.104 686.08H225.28c-63.488 0-115.712-52.224-115.712-115.712v-343.04c0-63.488 52.224-115.712 115.712-115.712h589.824c63.488 0 115.712 52.224 115.712 115.712v78.848c0 19.456-16.384 35.84-35.84 35.84s-35.84-16.384-35.84-35.84v-78.848c0-24.576-19.456-44.032-44.032-44.032H225.28c-24.576 0-44.032 19.456-44.032 44.032V570.368c0 24.576 19.456 44.032 44.032 44.032h589.824c24.576 0 44.032-19.456 44.032-44.032v-76.8c0-19.456 16.384-35.84 35.84-35.84s35.84 16.384 35.84 35.84v76.8c0 64.512-52.224 115.712-115.712 115.712z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
<glyph glyph-name="books" unicode="" d="M256 731.428571h585.142857c24.393143 0 24.393143-36.571429 0-36.571428a54.857143 54.857143 0 0 1 0-109.714286c24.393143 0 24.393143-36.571429 0-36.571428H256a91.428571 91.428571 0 0 0 0 182.857142z m-73.142857-256h566.857143a91.428571 91.428571 0 1 0 0-182.857142H182.857143c-24.393143 0-24.393143 36.571429 0 36.571428a54.857143 54.857143 0 0 1 0 109.714286c-24.393143 0-24.393143 36.571429 0 36.571428z m73.142857-256h585.142857c24.393143 0 24.393143-36.571429 0-36.571428a54.857143 54.857143 0 0 1 0-109.714286c24.393143 0 24.393143-36.571429 0-36.571428H256a91.428571 91.428571 0 1 0 0 182.857142z m0 475.428572a54.857143 54.857143 0 0 1 0-109.714286h512a91.026286 91.026286 0 0 0-18.285714 54.857143c0 20.589714 6.802286 39.570286 18.285714 54.857143H256z m18.285714-310.857143c0-20.589714-6.802286-39.570286-18.285714-54.857143h493.714286a54.857143 54.857143 0 0 1 0 109.714286H256c11.483429-15.286857 18.285714-34.267429 18.285714-54.857143zM256 182.857143a54.857143 54.857143 0 0 1 0-109.714286h512a91.026286 91.026286 0 0 0-18.285714 54.857143c0 20.589714 6.802286 39.570286 18.285714 54.857143H256z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
<glyph glyph-name="computer" unicode="" d="M937.3-4.4H541.7V178.1c0 16.5-13.5 30-30 30H126V402h161.8l46.6-80.8c3.5-6 8.8-10.4 14.8-12.8l0.6-0.3c14.7-7.5 32.9-1.6 40.3 13.1l129.7 254.5 92.9-160.9c0.3-0.6 0.7-1.2 1.1-1.7C618.7 403 629.1 396 641 396h261v-188H699c-16.5 0-30-13.5-30-30s13.5-30 30-30h203c33 0 60 27 60 59.9V771.4c0 33-27 59.9-60 59.9H126c-33 0-60-27-60-59.9V208c0-33 27-59.9 60-59.9h355.7v-152.5h-389c-13.6 0-24.7-11.1-24.7-24.7V-40c0-13.6 11.1-24.7 24.7-24.7h844.7c13.6 0 24.7 11.1 24.7 24.7v10.9c-0.1 13.6-11.2 24.7-24.8 24.7zM902 771.4V456H658.4L544.5 653.2c-8.2 14.2-26.4 19.2-40.7 11.1-5.2-2.8-9.7-7.1-12.6-12.8L360.7 395.6l-29.3 50.7c-0.7 1.3-1.5 2.4-2.4 3.5-5.5 7.4-14.2 12.2-24.1 12.2H126V771.4h776z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
<glyph glyph-name="setup" unicode="" d="M448 448h149.333333v-149.333333h-149.333333zM903.573333 373.333333L713.109333 702.954667H332.224L141.76 373.333333l190.464-329.621333h380.885333L903.573333 373.333333zM812.437333 703.189333H712.96l49.685333-86.122666h99.52L1003.029333 373.333333 762.837333-42.368H282.496L42.304 373.333333 282.496 789.034667h480.341333l49.6-85.845334z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
<glyph glyph-name="Biohazzard" unicode="" d="M512 558.08c44.373333 0 85.333333 17.066667 116.053333 51.2 3.413333 3.413333 6.826667 10.24 3.413334 13.653333 0 6.826667-3.413333 10.24-10.24 13.653334-71.68 30.72-150.186667 30.72-218.453334 0-6.826667-3.413333-10.24-6.826667-10.24-13.653334s0-10.24 3.413334-13.653333c30.72-34.133333 71.68-51.2 116.053333-51.2zM778.24 343.04c-40.96-10.24-78.506667-37.546667-98.986667-75.093333-20.48-34.133333-27.306667-78.506667-17.066666-119.466667 0-6.826667 6.826667-10.24 10.24-13.653333h6.826666c3.413333 0 6.826667 0 10.24 3.413333 61.44 44.373333 98.986667 112.64 109.226667 184.32 0 6.826667 0 10.24-6.826667 13.653333-3.413333 6.826667-10.24 6.826667-13.653333 6.826667zM334.506667 138.24c3.413333-3.413333 6.826667-3.413333 10.24-3.413333h6.826666c6.826667 3.413333 10.24 6.826667 10.24 13.653333 10.24 40.96 3.413333 81.92-17.066666 119.466667s-58.026667 64.853333-98.986667 75.093333c-6.826667 0-10.24 0-17.066667-3.413333s-6.826667-10.24-6.826666-13.653334c13.653333-78.506667 54.613333-143.36 112.64-187.733333zM1006.933333 308.906667c-17.066667 81.92-71.68 153.6-143.36 194.56-20.48 10.24-40.96 20.48-61.44 27.306666 6.826667 23.893333 6.826667 44.373333 6.826667 68.266667 0 85.333333-34.133333 163.84-95.573333 221.866667-6.826667 6.826667-13.653333 6.826667-20.48 0s-10.24-10.24-6.826667-17.066667c13.653333-27.306667 20.48-54.613333 20.48-85.333333 0-109.226667-88.746667-197.973333-194.56-197.973334S317.44 609.28 317.44 718.506667c0 27.306667 6.826667 58.026667 20.48 85.333333 3.413333 6.826667 0 17.066667-6.826667 20.48-6.826667 3.413333-17.066667 3.413333-20.48 0-61.44-58.026667-98.986667-139.946667-98.986666-225.28 0-23.893333 3.413333-44.373333 6.826666-68.266667-20.48-6.826667-40.96-17.066667-61.44-27.306666C85.333333 462.506667 34.133333 390.826667 13.653333 308.906667c-3.413333-6.826667 3.413333-17.066667 10.24-20.48 6.826667-3.413333 17.066667 0 20.48 6.826666 17.066667 23.893333 37.546667 44.373333 61.44 58.026667 30.72 17.066667 61.44 27.306667 95.573334 27.306667 68.266667 0 133.12-37.546667 167.253333-98.986667 54.613333-95.573333 20.48-215.04-71.68-269.653333-23.893333-13.653333-51.2-23.893333-81.92-23.893334-6.826667 0-13.653333-6.826667-17.066667-13.653333s3.413333-17.066667 10.24-17.066667c40.96-13.653333 71.68-17.066667 102.4-17.066666 51.2 0 102.4 13.653333 150.186667 40.96 20.48 10.24 37.546667 23.893333 54.613333 40.96 17.066667-17.066667 34.133333-30.72 54.613334-40.96 71.68-40.96 160.426667-51.2 238.933333-27.306667 6.826667 3.413333 13.653333 10.24 10.24 17.066667 0 6.826667-6.826667 13.653333-17.066667 13.653333-30.72 3.413333-58.026667 10.24-81.92 23.893333-92.16 54.613333-126.293333 174.08-71.68 269.653334 34.133333 61.44 98.986667 98.986667 167.253334 98.986666 34.133333 0 68.266667-10.24 95.573333-27.306666 23.893333-13.653333 44.373333-34.133333 61.44-58.026667 3.413333-6.826667 13.653333-10.24 20.48-6.826667 10.24 6.826667 13.653333 17.066667 13.653333 23.893334zM512 315.733333c-27.306667 0-51.2 23.893333-51.2 51.2S484.693333 418.133333 512 418.133333s51.2-23.893333 51.2-51.2S539.306667 315.733333 512 315.733333zM512 366.933333m-17.066667 0a17.066667 17.066667 0 1 1 34.133334 0 17.066667 17.066667 0 1 1-34.133334 0Z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
<glyph glyph-name="ios-checkbox-outline" unicode="" d="M832 768H192c-35.4 0-64-28.6-64-64v-640c0-35.4 28.6-64 64-64h640c35.4 0 64 28.6 64 64V704c0 35.4-28.6 64-64 64z m8-696c0-8.8-7.2-16-16-16H200c-8.8 0-16 7.2-16 16V696c0 8.8 7.2 16 16 16h624c8.8 0 16-7.2 16-16v-624zM727.2 510.2L692 546.4c-1.4 1.6-3.6 2.4-5.6 2.4-2.2 0-4.2-0.8-5.6-2.4l-244-245.8-88.8 88.8c-1.6 1.6-3.6 2.4-5.6 2.4-2 0-4-0.8-5.6-2.4l-35.6-35.6c-3.2-3.2-3.2-8.2 0-11.4l112-112c7.2-7.2 16-11.4 23.4-11.4 10.6 0 19.8 7.8 23.2 11h0.2l267.4 268.8c2.8 3.4 2.8 8.4-0.2 11.4z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
<glyph glyph-name="icon_computer" unicode="" d="M672 64h-320c-19.2 0-32-12.8-32-32s12.8-32 32-32h320c19.2 0 32 12.8 32 32s-12.8 32-32 32zM896 768H128c-38.4 0-64-25.6-64-64v-512c0-38.4 25.6-64 64-64h768c38.4 0 64 25.6 64 64V704c0 38.4-25.6 64-64 64zM544 640h128c19.2 0 32-12.8 32-32s-12.8-32-32-32h-128c-19.2 0-32 12.8-32 32s12.8 32 32 32zM448 352c0-19.2-12.8-32-32-32h-192c-19.2 0-32 12.8-32 32v256c0 19.2 12.8 32 32 32h192c19.2 0 32-12.8 32-32v-256z m288-32h-192c-19.2 0-32 12.8-32 32s12.8 32 32 32h192c19.2 0 32-12.8 32-32s-12.8-32-32-32z m64 128h-256c-19.2 0-32 12.8-32 32s12.8 32 32 32h256c19.2 0 32-12.8 32-32s-12.8-32-32-32z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
<glyph glyph-name="shanchu" unicode="" d="M938.666667 533.333333H85.333333a42.666667 42.666667 0 0 0 0 85.333334h853.333334a42.666667 42.666667 0 0 0 0-85.333334zM810.666667 533.333333H213.333333v42.666667A277.333333 277.333333 0 0 0 490.666667 853.333333h42.666666a277.333333 277.333333 0 0 0 277.333334-277.333333z m-507.306667 85.333334h417.28A192 192 0 0 1 533.333333 768h-42.666666a192 192 0 0 1-187.306667-149.333333zM768-85.333333H256a128 128 0 0 0-128 128V618.666667h768v-576a128 128 0 0 0-128-128zM213.333333 533.333333v-490.666666a42.666667 42.666667 0 0 1 42.666667-42.666667h512a42.666667 42.666667 0 0 1 42.666667 42.666667V533.333333zM373.333333 85.333333a42.666667 42.666667 0 0 0-42.666666 42.666667V405.333333a42.666667 42.666667 0 0 0 85.333333 0v-277.333333a42.666667 42.666667 0 0 0-42.666667-42.666667zM650.666667 85.333333a42.666667 42.666667 0 0 0-42.666667 42.666667V405.333333a42.666667 42.666667 0 0 0 85.333333 0v-277.333333a42.666667 42.666667 0 0 0-42.666666-42.666667z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
|
||||
|
||||
</font>
|
||||
</defs></svg>
|
||||
|
After Width: | Height: | Size: 31 KiB |
BIN
public/static/admin/fonts/iconfont/iconfont-1.ttf
Normal file
BIN
public/static/admin/fonts/iconfont/iconfont-1.woff
Normal file
BIN
public/static/admin/fonts/iconfont/iconfont.eot
Normal file
49
public/static/admin/fonts/iconfont/iconfont.svg
Normal file
@ -0,0 +1,49 @@
|
||||
<?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 xmlns="http://www.w3.org/2000/svg">
|
||||
<metadata>
|
||||
Created by FontForge 20120731 at Tue Feb 21 10:13:09 2017
|
||||
By admin
|
||||
</metadata>
|
||||
<defs>
|
||||
<font id="iconfont" horiz-adv-x="1024" >
|
||||
<font-face
|
||||
font-family="iconfont"
|
||||
font-weight="500"
|
||||
font-stretch="normal"
|
||||
units-per-em="1024"
|
||||
panose-1="2 0 6 3 0 0 0 0 0 0"
|
||||
ascent="896"
|
||||
descent="-128"
|
||||
x-height="792"
|
||||
bbox="44 -31 956 792"
|
||||
underline-thickness="0"
|
||||
underline-position="0"
|
||||
unicode-range="U+0078-E626"
|
||||
/>
|
||||
<missing-glyph
|
||||
/>
|
||||
<glyph glyph-name=".notdef"
|
||||
/>
|
||||
<glyph glyph-name=".notdef"
|
||||
/>
|
||||
<glyph glyph-name=".null" horiz-adv-x="0"
|
||||
/>
|
||||
<glyph glyph-name="nonmarkingreturn" horiz-adv-x="341"
|
||||
/>
|
||||
<glyph glyph-name="x" unicode="x" horiz-adv-x="1001"
|
||||
d="M281 543q-27 -1 -53 -1h-83q-18 0 -36.5 -6t-32.5 -18.5t-23 -32t-9 -45.5v-76h912v41q0 16 -0.5 30t-0.5 18q0 13 -5 29t-17 29.5t-31.5 22.5t-49.5 9h-133v-97h-438v97zM955 310v-52q0 -23 0.5 -52t0.5 -58t-10.5 -47.5t-26 -30t-33 -16t-31.5 -4.5q-14 -1 -29.5 -0.5
|
||||
t-29.5 0.5h-32l-45 128h-439l-44 -128h-29h-34q-20 0 -45 1q-25 0 -41 9.5t-25.5 23t-13.5 29.5t-4 30v167h911zM163 247q-12 0 -21 -8.5t-9 -21.5t9 -21.5t21 -8.5q13 0 22 8.5t9 21.5t-9 21.5t-22 8.5zM316 123q-8 -26 -14 -48q-5 -19 -10.5 -37t-7.5 -25t-3 -15t1 -14.5
|
||||
t9.5 -10.5t21.5 -4h37h67h81h80h64h36q23 0 34 12t2 38q-5 13 -9.5 30.5t-9.5 34.5q-5 19 -11 39h-368zM336 498v228q0 11 2.5 23t10 21.5t20.5 15.5t34 6h188q31 0 51.5 -14.5t20.5 -52.5v-227h-327z" />
|
||||
<glyph glyph-name="max" unicode=""
|
||||
d="M786 486q0 11 -8 18.5t-19 7.5h-554q-11 0 -19 -7.5t-8 -18.5v-350q0 -11 8 -19t19 -8h554q11 0 19 8t8 19v350zM741 154h-518v313h518v-313zM856 601h-554q-10 0 -16.5 -6.5t-6.5 -16t6.5 -16t16.5 -6.5h536v-331q0 -10 6.5 -16.5t16 -6.5t16 6.5t6.5 16.5v350
|
||||
q0 11 -8 18.5t-19 7.5z" />
|
||||
<glyph glyph-name="restore" unicode=""
|
||||
d="M866 586h-555q-11 0 -18.5 -8t-7.5 -19v-87h-93q-11 0 -18.5 -7.5t-7.5 -18.5v-350q0 -11 7.5 -19t18.5 -8h555q11 0 19 8t8 19v87h92q11 0 18.5 7.5t7.5 18.5v350q0 11 -7.5 19t-18.5 8zM729 114h-518v313h518v-313zM847 228h-73v218q0 11 -8 18.5t-19 7.5h-417v69h517
|
||||
v-313z" />
|
||||
<glyph glyph-name="min" unicode=""
|
||||
d="M773 192h-528q-9 0 -16 6.5t-7 15.5v0q0 10 7 16.5t16 6.5h528q9 0 15.5 -6.5t6.5 -16.5v0q0 -9 -6.5 -15.5t-15.5 -6.5z" />
|
||||
<glyph glyph-name="close" unicode=""
|
||||
d="M719 208l-175 174l174 175q7 6 7 15.5t-7 16t-16 6.5t-16 -7l-174 -174l-174 174q-7 7 -16.5 7t-15.5 -7v0q-7 -6 -7 -15.5t7 -15.5l174 -175l-174 -174q-7 -7 -7 -16.5t6.5 -16t16 -6.5t15.5 7l175 175l175 -175q6 -7 15.5 -7t15.5 7h1q6 6 6 15.5t-6 16.5z" />
|
||||
</font>
|
||||
</defs></svg>
|
||||
|
After Width: | Height: | Size: 2.7 KiB |
BIN
public/static/admin/fonts/iconfont/iconfont.ttf
Normal file
BIN
public/static/admin/fonts/iconfont/iconfont.woff
Normal file
BIN
public/static/admin/images/captcha.jpg
Normal file
|
After Width: | Height: | Size: 2.4 KiB |
BIN
public/static/admin/images/head.jpg
Normal file
|
After Width: | Height: | Size: 31 KiB |
BIN
public/static/admin/images/icon-login.png
Normal file
|
After Width: | Height: | Size: 2.7 KiB |
BIN
public/static/admin/images/loginbg.png
Normal file
|
After Width: | Height: | Size: 671 KiB |
BIN
public/static/admin/images/upload-icons/doc.png
Normal file
|
After Width: | Height: | Size: 15 KiB |
BIN
public/static/admin/images/upload-icons/file.png
Normal file
|
After Width: | Height: | Size: 418 B |
BIN
public/static/admin/images/upload-icons/image.png
Normal file
|
After Width: | Height: | Size: 1.0 KiB |
BIN
public/static/admin/images/upload-icons/mp3.png
Normal file
|
After Width: | Height: | Size: 15 KiB |
BIN
public/static/admin/images/upload-icons/mp4.png
Normal file
|
After Width: | Height: | Size: 15 KiB |
BIN
public/static/admin/images/upload-icons/pdf.png
Normal file
|
After Width: | Height: | Size: 15 KiB |
BIN
public/static/admin/images/upload-icons/ppt.png
Normal file
|
After Width: | Height: | Size: 15 KiB |
BIN
public/static/admin/images/upload-icons/rar.png
Normal file
|
After Width: | Height: | Size: 15 KiB |
BIN
public/static/admin/images/upload-icons/txt.png
Normal file
|
After Width: | Height: | Size: 14 KiB |
BIN
public/static/admin/images/upload-icons/visio.png
Normal file
|
After Width: | Height: | Size: 15 KiB |
BIN
public/static/admin/images/upload-icons/xls.png
Normal file
|
After Width: | Height: | Size: 15 KiB |
BIN
public/static/admin/images/upload-icons/zip.png
Normal file
|
After Width: | Height: | Size: 15 KiB |
51
public/static/admin/js/article/article.js
Normal file
@ -0,0 +1,51 @@
|
||||
define(["jquery", "easy-admin"], function ($, ea) {
|
||||
|
||||
let init = {
|
||||
table_elem: '#currentTable',
|
||||
table_render_id: 'currentTableRenderId',
|
||||
index_url: 'article.article/index',
|
||||
add_url: 'article.article/add',
|
||||
edit_url: 'article.article/edit',
|
||||
delete_url: 'article.article/delete',
|
||||
export_url: 'article.article/export',
|
||||
modify_url: 'article.article/modify',
|
||||
};
|
||||
|
||||
let Controller = {
|
||||
|
||||
index: function () {
|
||||
ea.table.render({
|
||||
init: init,
|
||||
cols: [[
|
||||
{type: "checkbox"},
|
||||
{field: 'id', width: 80, title: 'ID'},
|
||||
{field: 'title', minWidth: 200, title: '文章标题'},
|
||||
{field: 'cate_name', width: 120, title: '分类'},
|
||||
{field: 'author', width: 100, title: '作者'},
|
||||
{field: 'sort', width: 80, title: '排序', edit: 'text'},
|
||||
{field: 'status', title: '状态', width: 85, selectList: {0: '禁用', 1: '启用'}, templet: ea.table.switch},
|
||||
{field: 'create_time', minWidth: 150, title: '创建时间'},
|
||||
{
|
||||
width: 250,
|
||||
title: '操作',
|
||||
templet: ea.table.tool,
|
||||
operat: ['edit', 'delete']
|
||||
}
|
||||
]],
|
||||
});
|
||||
|
||||
ea.listen();
|
||||
},
|
||||
|
||||
add: function () {
|
||||
ea.listen();
|
||||
},
|
||||
|
||||
edit: function () {
|
||||
ea.listen();
|
||||
},
|
||||
|
||||
};
|
||||
|
||||
return Controller;
|
||||
});
|
||||
49
public/static/admin/js/article/cate.js
Normal file
@ -0,0 +1,49 @@
|
||||
define(["jquery", "easy-admin"], function ($, ea) {
|
||||
|
||||
let init = {
|
||||
table_elem: '#currentTable',
|
||||
table_render_id: 'currentTableRenderId',
|
||||
index_url: 'article.cate/index',
|
||||
add_url: 'article.cate/add',
|
||||
edit_url: 'article.cate/edit',
|
||||
delete_url: 'article.cate/delete',
|
||||
export_url: 'article.cate/export',
|
||||
modify_url: 'article.cate/modify',
|
||||
};
|
||||
|
||||
return {
|
||||
index: function () {
|
||||
ea.table.render({
|
||||
init: init,
|
||||
cols: [[
|
||||
{type: "checkbox"},
|
||||
{field: 'id', width: 80, title: 'ID'},
|
||||
{field: 'title', minWidth: 150, title: '分类名称'},
|
||||
{field: 'sort', width: 100, title: '排序', edit: 'text'},
|
||||
{
|
||||
field: 'status',
|
||||
title: '状态',
|
||||
width: 85,
|
||||
selectList: {0: '禁用', 1: '启用'},
|
||||
templet: ea.table.switch
|
||||
},
|
||||
{field: 'create_time', minWidth: 150, title: '创建时间'},
|
||||
{
|
||||
width: 250,
|
||||
title: '操作',
|
||||
templet: ea.table.tool,
|
||||
operat: ['edit', 'delete']
|
||||
}
|
||||
]],
|
||||
});
|
||||
|
||||
ea.listen();
|
||||
},
|
||||
add: function () {
|
||||
ea.listen();
|
||||
},
|
||||
edit: function () {
|
||||
ea.listen();
|
||||
},
|
||||
};
|
||||
});
|
||||
222
public/static/admin/js/index.js
Normal file
@ -0,0 +1,222 @@
|
||||
define(["jquery", "easy-admin", "echarts", "echarts-theme", "miniAdmin", "miniTheme", "miniTab", "swiper"], function ($, ea, echarts, undefined, miniAdmin, miniTheme, miniTab) {
|
||||
|
||||
return {
|
||||
index: function () {
|
||||
var options = {
|
||||
iniUrl: ea.url('ajax/initAdmin'), // 初始化接口
|
||||
clearUrl: ea.url("ajax/clearCache"), // 缓存清理接口
|
||||
urlHashLocation: true, // 是否打开hash定位
|
||||
bgColorDefault: false, // 主题默认配置
|
||||
multiModule: true, // 是否开启多模块
|
||||
menuChildOpen: false, // 是否默认展开菜单
|
||||
loadingTime: 0, // 初始化加载时间
|
||||
pageAnim: true, // iframe窗口动画
|
||||
maxTabNum: 20, // 最大的tab打开数量
|
||||
};
|
||||
miniAdmin.render(options);
|
||||
|
||||
$('.login-out').on("click", function () {
|
||||
ea.request.get({
|
||||
url: 'login/out',
|
||||
prefix: true,
|
||||
}, function (res) {
|
||||
ea.msg.success(res.msg, function () {
|
||||
window.location = ea.url('login/index');
|
||||
})
|
||||
});
|
||||
});
|
||||
},
|
||||
welcome: function () {
|
||||
miniTab.listen();
|
||||
|
||||
new Swiper('.mySwiper', {
|
||||
pagination: {
|
||||
el: '.swiper-pagination',
|
||||
clickable: true,
|
||||
},
|
||||
})
|
||||
|
||||
/**
|
||||
* 查看公告信息
|
||||
**/
|
||||
$('body').on('click', '.layuimini-notice', function () {
|
||||
var title = $(this).children('.layuimini-notice-title').text(),
|
||||
noticeTime = $(this).children('.layuimini-notice-extra').text(),
|
||||
content = $(this).children('.layuimini-notice-content').html();
|
||||
var html = '<div style="padding:15px 20px; text-align:justify; line-height: 22px;border-bottom:1px solid #e2e2e2;background-color: #2f4056;color: #ffffff">\n' +
|
||||
'<div style="text-align: center;margin-bottom: 20px;font-weight: bold;border-bottom:1px solid #718fb5;padding-bottom: 5px"><h4 class="text-danger">' + title + '</h4></div>\n' +
|
||||
'<div style="font-size: 12px">' + content + '</div>\n' +
|
||||
'</div>\n';
|
||||
layer.open({
|
||||
type: 1,
|
||||
title: '系统公告' + '<span style="float: right;right: 1px;font-size: 12px;color: #b1b3b9;margin-top: 1px">' + noticeTime + '</span>',
|
||||
area: '300px;',
|
||||
shade: 0.8,
|
||||
id: 'layuimini-notice',
|
||||
btn: ['查看', '取消'],
|
||||
btnAlign: 'c',
|
||||
moveType: 1,
|
||||
content: html,
|
||||
success: function (layero) {
|
||||
var btn = layero.find('.layui-layer-btn');
|
||||
btn.find('.layui-layer-btn0').attr({
|
||||
href: 'https://gitee.com/zhongshaofa/layuimini',
|
||||
target: '_blank'
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
/**
|
||||
* 报表功能
|
||||
*/
|
||||
$(function () {
|
||||
$('#layui-version').text('v' + layui.v);
|
||||
let echartsRecords = echarts.init(document.getElementById('echarts-records'), 'walden');
|
||||
let optionRecords = {
|
||||
title: {
|
||||
text: '访问统计'
|
||||
},
|
||||
tooltip: {
|
||||
trigger: 'axis'
|
||||
},
|
||||
legend: {
|
||||
data: ['邮件营销', '联盟广告', '视频广告', '直接访问', '搜索引擎']
|
||||
},
|
||||
grid: {
|
||||
left: '3%',
|
||||
right: '4%',
|
||||
bottom: '3%',
|
||||
containLabel: true
|
||||
},
|
||||
toolbox: {
|
||||
feature: {
|
||||
saveAsImage: {}
|
||||
}
|
||||
},
|
||||
xAxis: {
|
||||
type: 'category',
|
||||
boundaryGap: false,
|
||||
data: ['周一', '周二', '周三', '周四', '周五', '周六', '周日']
|
||||
},
|
||||
yAxis: {
|
||||
type: 'value'
|
||||
},
|
||||
series: [
|
||||
{
|
||||
name: '邮件营销',
|
||||
type: 'line',
|
||||
stack: '总量',
|
||||
data: [120, 132, 101, 134, 90, 230, 210]
|
||||
},
|
||||
{
|
||||
name: '联盟广告',
|
||||
type: 'line',
|
||||
stack: '总量',
|
||||
data: [220, 182, 191, 234, 290, 330, 310]
|
||||
},
|
||||
{
|
||||
name: '视频广告',
|
||||
type: 'line',
|
||||
stack: '总量',
|
||||
data: [150, 232, 201, 154, 190, 330, 410]
|
||||
},
|
||||
{
|
||||
name: '直接访问',
|
||||
type: 'line',
|
||||
stack: '总量',
|
||||
data: [320, 332, 301, 334, 390, 330, 320]
|
||||
},
|
||||
{
|
||||
name: '搜索引擎',
|
||||
type: 'line',
|
||||
stack: '总量',
|
||||
data: [820, 932, 901, 934, 1290, 1330, 1320]
|
||||
}
|
||||
]
|
||||
};
|
||||
echartsRecords.setOption(optionRecords);
|
||||
window.addEventListener("resize", function () {
|
||||
echartsRecords.resize();
|
||||
});
|
||||
})
|
||||
|
||||
let util = layui.util;
|
||||
util.on({
|
||||
showComposerInfo: function () {
|
||||
// <div style="padding: 25px;">12313</div>
|
||||
let html = ``
|
||||
ea.request.get({
|
||||
url: ea.url('ajax/composerInfo'),
|
||||
}, function (success) {
|
||||
let data = success.data
|
||||
data.forEach(function (item) {
|
||||
html += `${item.name} ${item.version}\r\n`
|
||||
})
|
||||
html = `<pre class="layui-code code-demo">${html}</pre>`
|
||||
layer.open({
|
||||
type: 1,
|
||||
title: 'composer 信息',
|
||||
area: ['50%', '90%'],
|
||||
shade: 0.8,
|
||||
shadeClose: true,
|
||||
scrollbar: false,
|
||||
content: html,
|
||||
success: function () {
|
||||
layui.code({elem: '.code-demo', theme: 'dark', lang: 'php'});
|
||||
}
|
||||
})
|
||||
}, function (error) {
|
||||
console.error(error)
|
||||
return false;
|
||||
})
|
||||
|
||||
}
|
||||
})
|
||||
|
||||
/**
|
||||
* ✅ 定时检查未分配订单 + 播放提示音
|
||||
*/
|
||||
setInterval(function () {
|
||||
ea.request.get({
|
||||
url: ea.url('index/get_order'),
|
||||
}, function (res) {
|
||||
// 假设接口返回格式:{code:1, data:{count:2}}
|
||||
let audio;
|
||||
if (res.code === 1 && res.data > 0) {
|
||||
// 若不存在则动态创建
|
||||
audio = document.createElement('audio');
|
||||
audio.id = 'order-audio';
|
||||
audio.src = '/1.mp3'; // ✅ 修改为你的提示音路径
|
||||
audio.autoplay = true;
|
||||
audio.volume = 1.0;
|
||||
document.body.appendChild(audio);
|
||||
audio.play().then(r => {});
|
||||
layui.table.reload(init.table_render_id);
|
||||
}
|
||||
}, function (err) {
|
||||
console.error('检查未分配订单失败', err);
|
||||
});
|
||||
}, 10000); // 每60秒执行一次
|
||||
|
||||
},
|
||||
editAdmin: function () {
|
||||
let form = layui.form
|
||||
form.on('radio(loginType-filter)', function (data) {
|
||||
let elem = data.elem
|
||||
let value = elem.value
|
||||
if (value === '2') {
|
||||
let width = screen.width < 768 ? '85%' : '60%'
|
||||
ea.open('绑定谷歌验证码', ea.url('index/set2fa'), width, '75%')
|
||||
}
|
||||
});
|
||||
ea.listen();
|
||||
},
|
||||
editPassword: function () {
|
||||
ea.listen();
|
||||
},
|
||||
set2fa: function () {
|
||||
ea.listen();
|
||||
},
|
||||
};
|
||||
});
|
||||
61
public/static/admin/js/login.js
Normal file
@ -0,0 +1,61 @@
|
||||
define(["jquery", "easy-admin"], function ($, ea) {
|
||||
|
||||
return {
|
||||
index: function () {
|
||||
if (top.location !== self.location) {
|
||||
top.location = self.location;
|
||||
}
|
||||
$(function () {
|
||||
if (backgroundUrl) {
|
||||
$('body').css('background', 'url(' + backgroundUrl + ') 0% 0% / cover no-repeat')
|
||||
}
|
||||
$('.bind-password').on('click', function () {
|
||||
if ($(this).hasClass('icon-5')) {
|
||||
$(this).removeClass('icon-5');
|
||||
$("input[name='password']").attr('type', 'password');
|
||||
} else {
|
||||
$(this).addClass('icon-5');
|
||||
$("input[name='password']").attr('type', 'text');
|
||||
}
|
||||
});
|
||||
|
||||
$('.icon-nocheck').on('click', function () {
|
||||
if ($(this).hasClass('icon-check')) {
|
||||
$(this).removeClass('icon-check');
|
||||
} else {
|
||||
$(this).addClass('icon-check');
|
||||
}
|
||||
});
|
||||
|
||||
document.addEventListener('keydown', function (event) {
|
||||
if (event.key === 'Enter' || event.keyCode === 13) {
|
||||
$('.login-btn').trigger('click')
|
||||
}
|
||||
});
|
||||
|
||||
$('.login-tip').on('click', function () {
|
||||
$('.icon-nocheck').click();
|
||||
});
|
||||
|
||||
ea.listen(function (data) {
|
||||
data['keep_login'] = $('.icon-nocheck').hasClass('icon-check') ? 1 : 0;
|
||||
return data;
|
||||
}, function (res) {
|
||||
ea.msg.success(res.msg, function () {
|
||||
window.location = ea.url('index');
|
||||
})
|
||||
}, function (res) {
|
||||
let data = res.data
|
||||
if (data?.is_ga_code || false) {
|
||||
let elem = $('#gaCode')
|
||||
elem.removeClass('layui-hide');
|
||||
elem.find('input').focus()
|
||||
}
|
||||
ea.msg.error(res.msg, function () {
|
||||
$('#refreshCaptcha').trigger("click");
|
||||
});
|
||||
});
|
||||
});
|
||||
},
|
||||
};
|
||||
});
|
||||
208
public/static/admin/js/mall/blackip.js
Normal file
@ -0,0 +1,208 @@
|
||||
define(["jquery", "easy-admin"], function ($, ea) {
|
||||
|
||||
var init = {
|
||||
table_elem: '#currentTable',
|
||||
table_render_id: 'currentTableRenderId',
|
||||
index_url: 'mall.blackip/index',
|
||||
add_url: 'mall.blackip/add',
|
||||
edit_url: 'mall.blackip/edit',
|
||||
delete_url: 'mall.blackip/delete',
|
||||
export_url: 'mall.blackip/export',
|
||||
modify_url: 'mall.blackip/modify',
|
||||
recycle_url: 'mall.blackip/recycle',
|
||||
};
|
||||
|
||||
return {
|
||||
|
||||
index: function () {
|
||||
ea.table.render({
|
||||
init: init,
|
||||
toolbar: ['refresh',
|
||||
[{
|
||||
text: '添加',
|
||||
url: init.add_url,
|
||||
method: 'open',
|
||||
auth: 'add',
|
||||
class: 'layui-btn layui-btn-normal layui-btn-sm',
|
||||
icon: 'fa fa-plus ',
|
||||
extend: 'data-width="90%" data-height="95%"',
|
||||
}],
|
||||
'delete', 'export', 'recycle'],
|
||||
cols: [[
|
||||
{type: "checkbox"},
|
||||
{field: 'id', width: 80, title: 'ID', searchOp: '='},
|
||||
{field: 'ip', width: 100, title: 'IP'},
|
||||
{field: 'create_time', minWidth: 80, title: '创建时间', search: 'range'},
|
||||
{
|
||||
width: 250,
|
||||
title: '操作',
|
||||
templet: ea.table.tool,
|
||||
operat: [
|
||||
['delete']
|
||||
]
|
||||
}
|
||||
]],
|
||||
done: (res) => {
|
||||
// 状态为1的商品背景高亮 展示写法 可根据自己项目自定义
|
||||
$.each(res.data, function (idx, item) {
|
||||
if (item.status === 1) {
|
||||
$(`tr[data-index="${idx}"]`).css({
|
||||
'background': 'linear-gradient(to left, #77eb7c, #bbffbe, #ffffff, transparent)',
|
||||
'bblackip': 'none',
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
});
|
||||
|
||||
ea.listen();
|
||||
},
|
||||
add: function () {
|
||||
layui.util.on({
|
||||
AiOptimization: function (data) {
|
||||
let layOn = $(data).attr('lay-on')
|
||||
$(data).attr('lay-on', layOn + 'Loading')
|
||||
aiOptimization(data)
|
||||
},
|
||||
})
|
||||
|
||||
var demo1 = xmSelect.render({
|
||||
el: '#demo1',
|
||||
name: 'xxx', // form表单提交的name
|
||||
theme: {color: getComputedStyle(document.documentElement).getPropertyValue('--ea8-theme-main-color') || '#16b777'},
|
||||
data: [
|
||||
{name: 'Make', value: 1},
|
||||
{name: 'PHP', value: 2},
|
||||
{name: 'Great Again', value: 3},
|
||||
]
|
||||
})
|
||||
|
||||
ea.listen();
|
||||
},
|
||||
edit: function () {
|
||||
layui.util.on({
|
||||
AiOptimization: function (data) {
|
||||
let layOn = $(data).attr('lay-on')
|
||||
$(data).attr('lay-on', layOn + 'Loading')
|
||||
aiOptimization(data)
|
||||
},
|
||||
})
|
||||
|
||||
var demo1 = xmSelect.render({
|
||||
el: '#demo1',
|
||||
name: 'xxx', // form表单提交的name
|
||||
theme: {color: getComputedStyle(document.documentElement).getPropertyValue('--ea8-theme-main-color') || '#16b777'},
|
||||
data: [
|
||||
{name: 'Make', value: 1},
|
||||
{name: 'PHP', value: 2, selected: true,},
|
||||
{name: 'Great Again', value: 3, selected: true,},
|
||||
]
|
||||
})
|
||||
|
||||
ea.listen();
|
||||
},
|
||||
stock: function () {
|
||||
ea.listen();
|
||||
},
|
||||
recycle: function () {
|
||||
init.index_url = init.recycle_url;
|
||||
ea.table.render({
|
||||
init: init,
|
||||
toolbar: ['refresh',
|
||||
[{
|
||||
class: 'layui-btn layui-btn-sm',
|
||||
method: 'get',
|
||||
field: 'id',
|
||||
icon: 'fa fa-refresh',
|
||||
text: '全部恢复',
|
||||
title: '确定恢复?',
|
||||
auth: 'recycle',
|
||||
url: init.recycle_url + '?type=restore',
|
||||
checkbox: true
|
||||
}, {
|
||||
class: 'layui-btn layui-btn-danger layui-btn-sm',
|
||||
method: 'get',
|
||||
field: 'id',
|
||||
icon: 'fa fa-delete',
|
||||
text: '彻底删除',
|
||||
title: '确定彻底删除?',
|
||||
auth: 'recycle',
|
||||
url: init.recycle_url + '?type=delete',
|
||||
checkbox: true
|
||||
}], 'export',
|
||||
],
|
||||
cols: [[
|
||||
{type: "checkbox"},
|
||||
{field: 'id', width: 80, title: 'ID', searchOp: '='},
|
||||
{field: 'sort', width: 80, title: '排序', edit: 'text'},
|
||||
{field: 'cate_id', minWidth: 80, title: '商品分类', search: 'select', selectList: cateSelects, laySearch: true},
|
||||
{field: 'title', minWidth: 80, title: '商品名称'},
|
||||
{field: 'logo', minWidth: 80, title: '分类图片', search: false, templet: ea.table.image},
|
||||
{field: 'status', title: '状态', width: 85, selectList: {0: '禁用', 1: '启用'}},
|
||||
// 演示多选,实际数据库并无 status2 字段,搜索后会报错
|
||||
{
|
||||
field: 'status2', title: '演示多选', width: 105, search: 'xmSelect', selectList: {1: '模拟选项1', 2: '模拟选项2', 3: '模拟选项3', 4: '模拟选项4', 5: '模拟选项5'}, hide: true,
|
||||
searchOp: 'in', templet: function (res) {
|
||||
// 根据自己实际项目进行输出
|
||||
return res?.status2 || '模拟数据'
|
||||
}
|
||||
},
|
||||
{field: 'create_time', minWidth: 80, title: '创建时间', search: 'range'},
|
||||
{field: 'delete_time', minWidth: 80, title: '删除时间', search: 'range'},
|
||||
{
|
||||
width: 250,
|
||||
title: '操作',
|
||||
templet: ea.table.tool,
|
||||
operat: [
|
||||
[{
|
||||
title: '确认恢复?',
|
||||
text: '恢复数据',
|
||||
filed: 'id',
|
||||
url: init.recycle_url + '?type=restore',
|
||||
method: 'get',
|
||||
auth: 'recycle',
|
||||
class: 'layui-btn layui-btn-xs layui-btn-success',
|
||||
}, {
|
||||
title: '想好了吗?',
|
||||
text: '彻底删除',
|
||||
filed: 'id',
|
||||
method: 'get',
|
||||
url: init.recycle_url + '?type=delete',
|
||||
auth: 'recycle',
|
||||
class: 'layui-btn layui-btn-xs layui-btn-normal layui-bg-red',
|
||||
}]]
|
||||
}
|
||||
]],
|
||||
});
|
||||
ea.listen();
|
||||
},
|
||||
};
|
||||
|
||||
function aiOptimization(data) {
|
||||
let layOn = $(data).attr('lay-on')
|
||||
let title = $('input[name="title"]').val()
|
||||
|
||||
// 告诉AI 你需要做什么
|
||||
let message = `优化这个标题 ${title}`
|
||||
|
||||
if ($.trim(title) === '') {
|
||||
ea.msg.error('标题不能为空', function () {
|
||||
$(data).attr('lay-on', layOn.split('Loading')[0])
|
||||
})
|
||||
return false
|
||||
}
|
||||
let url = ea.url('mall.blackip/aiOptimization')
|
||||
ea.request.post({url: url, data: {message: message}}, function (res) {
|
||||
let content = res.data?.choices[0]?.message?.content
|
||||
// stream 为true 时,AI 内容会逐字输出
|
||||
let stream = true
|
||||
ea.ai.chat(content, {stream: stream}, function () {
|
||||
$(data).attr('lay-on', layOn.split('Loading')[0])
|
||||
})
|
||||
}, function (error) {
|
||||
ea.msg.error(error.msg, function () {
|
||||
$(data).attr('lay-on', layOn.split('Loading')[0])
|
||||
})
|
||||
})
|
||||
}
|
||||
});
|
||||
41
public/static/admin/js/mall/cate.js
Normal file
@ -0,0 +1,41 @@
|
||||
define(["jquery", "easy-admin"], function ($, ea) {
|
||||
|
||||
var init = {
|
||||
table_elem: '#currentTable',
|
||||
table_render_id: 'currentTableRenderId',
|
||||
index_url: 'mall.cate/index',
|
||||
add_url: 'mall.cate/add',
|
||||
edit_url: 'mall.cate/edit',
|
||||
delete_url: 'mall.cate/delete',
|
||||
export_url: 'mall.cate/export',
|
||||
modify_url: 'mall.cate/modify',
|
||||
};
|
||||
|
||||
return {
|
||||
|
||||
index: function () {
|
||||
ea.table.render({
|
||||
init: init,
|
||||
cols: [[
|
||||
{type: "checkbox"},
|
||||
{field: 'id', width: 80, title: 'ID', searchOp: '='},
|
||||
{field: 'sort', width: 80, title: '排序', edit: 'text'},
|
||||
{field: 'title', minWidth: 80, title: '分类名称'},
|
||||
{field: 'image', minWidth: 80, title: '分类图片', search: false, templet: ea.table.image},
|
||||
{field: 'remark', minWidth: 80, title: '备注信息'},
|
||||
{field: 'status', title: '状态', width: 85, search: 'select', selectList: {0: '禁用', 1: '启用'}, templet: ea.table.switch},
|
||||
{field: 'create_time', minWidth: 80, title: '创建时间', search: 'range'},
|
||||
{width: 250, title: '操作', templet: ea.table.tool}
|
||||
]],
|
||||
});
|
||||
|
||||
ea.listen();
|
||||
},
|
||||
add: function () {
|
||||
ea.listen();
|
||||
},
|
||||
edit: function () {
|
||||
ea.listen();
|
||||
},
|
||||
};
|
||||
});
|
||||
247
public/static/admin/js/mall/goods.js
Normal file
@ -0,0 +1,247 @@
|
||||
define(["jquery", "easy-admin"], function ($, ea) {
|
||||
|
||||
var init = {
|
||||
table_elem: '#currentTable',
|
||||
table_render_id: 'currentTableRenderId',
|
||||
index_url: 'mall.goods/index',
|
||||
add_url: 'mall.goods/add',
|
||||
edit_url: 'mall.goods/edit',
|
||||
delete_url: 'mall.goods/delete',
|
||||
export_url: 'mall.goods/export',
|
||||
modify_url: 'mall.goods/modify',
|
||||
stock_url: 'mall.goods/stock',
|
||||
recycle_url: 'mall.goods/recycle',
|
||||
};
|
||||
|
||||
return {
|
||||
|
||||
index: function () {
|
||||
ea.table.render({
|
||||
init: init,
|
||||
toolbar: ['refresh',
|
||||
[{
|
||||
text: '添加',
|
||||
url: init.add_url,
|
||||
method: 'open',
|
||||
auth: 'add',
|
||||
class: 'layui-btn layui-btn-normal layui-btn-sm',
|
||||
icon: 'fa fa-plus ',
|
||||
extend: 'data-width="90%" data-height="95%"',
|
||||
}],
|
||||
'delete', 'export', 'recycle'],
|
||||
cols: [[
|
||||
{type: "checkbox"},
|
||||
{field: 'id', width: 80, title: 'ID', searchOp: '='},
|
||||
{field: 'sort', width: 80, title: '排序', edit: 'text'},
|
||||
{field: 'cate_id', width: 100, title: '商品分类', search: 'select', selectList: cateSelects, laySearch: true},
|
||||
{field: 'title', width: 100, title: '商品名称'},
|
||||
{field: 'logo', width: 100, title: '分类图片', search: false, templet: ea.table.image},
|
||||
{field: 'market_price', width: 100, title: '市场价', templet: ea.table.price},
|
||||
{field: 'discount_price', width: 100, title: '折扣价', templet: ea.table.price},
|
||||
{field: 'total_stock', width: 100, title: '库存统计'},
|
||||
{field: 'stock', width: 100, title: '剩余库存'},
|
||||
{field: 'virtual_sales', width: 100, title: '虚拟销量'},
|
||||
{field: 'sales', width: 80, title: '销量'},
|
||||
{field: 'status', title: '状态', width: 85, selectList: {0: '禁用', 1: '启用'}, templet: ea.table.switch},
|
||||
// 演示多选,实际数据库并无 status2 字段,搜索后会报错
|
||||
{
|
||||
field: 'status2', title: '演示多选', width: 105, search: 'xmSelect', selectList: {1: '模拟选项1', 2: '模拟选项2', 3: '模拟选项3', 4: '模拟选项4', 5: '模拟选项5'}, hide: true,
|
||||
searchOp: 'in', templet: function (res) {
|
||||
// 根据自己实际项目进行输出
|
||||
return res?.status2 || '模拟数据'
|
||||
}
|
||||
},
|
||||
{field: 'create_time', minWidth: 80, title: '创建时间', search: 'range'},
|
||||
{
|
||||
width: 250,
|
||||
title: '操作',
|
||||
templet: ea.table.tool,
|
||||
operat: [
|
||||
[{
|
||||
templet: function (d) {
|
||||
return `<button type="button" class="layui-btn layui-btn-xs">自定义 ${d.id}</button>`
|
||||
}
|
||||
}, {
|
||||
text: '编辑',
|
||||
url: init.edit_url,
|
||||
method: 'open',
|
||||
auth: 'edit',
|
||||
class: 'layui-btn layui-btn-xs layui-btn-success',
|
||||
extend: 'data-width="90%" data-height="95%"',
|
||||
}, {
|
||||
text: '入库',
|
||||
url: init.stock_url,
|
||||
method: 'open',
|
||||
auth: 'stock',
|
||||
class: 'layui-btn layui-btn-xs layui-btn-normal',
|
||||
visible: function (row) {
|
||||
return row.status === 1;
|
||||
},
|
||||
}],
|
||||
'delete']
|
||||
}
|
||||
]],
|
||||
done: (res) => {
|
||||
// 状态为1的商品背景高亮 展示写法 可根据自己项目自定义
|
||||
$.each(res.data, function (idx, item) {
|
||||
if (item.status === 1) {
|
||||
$(`tr[data-index="${idx}"]`).css({
|
||||
'background': 'linear-gradient(to left, #77eb7c, #bbffbe, #ffffff, transparent)',
|
||||
'border': 'none',
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
});
|
||||
|
||||
ea.listen();
|
||||
},
|
||||
add: function () {
|
||||
layui.util.on({
|
||||
AiOptimization: function (data) {
|
||||
let layOn = $(data).attr('lay-on')
|
||||
$(data).attr('lay-on', layOn + 'Loading')
|
||||
aiOptimization(data)
|
||||
},
|
||||
})
|
||||
|
||||
var demo1 = xmSelect.render({
|
||||
el: '#demo1',
|
||||
name: 'xxx', // form表单提交的name
|
||||
theme: {color: getComputedStyle(document.documentElement).getPropertyValue('--ea8-theme-main-color') || '#16b777'},
|
||||
data: [
|
||||
{name: 'Make', value: 1},
|
||||
{name: 'PHP', value: 2},
|
||||
{name: 'Great Again', value: 3},
|
||||
]
|
||||
})
|
||||
|
||||
ea.listen();
|
||||
},
|
||||
edit: function () {
|
||||
layui.util.on({
|
||||
AiOptimization: function (data) {
|
||||
let layOn = $(data).attr('lay-on')
|
||||
$(data).attr('lay-on', layOn + 'Loading')
|
||||
aiOptimization(data)
|
||||
},
|
||||
})
|
||||
|
||||
var demo1 = xmSelect.render({
|
||||
el: '#demo1',
|
||||
name: 'xxx', // form表单提交的name
|
||||
theme: {color: getComputedStyle(document.documentElement).getPropertyValue('--ea8-theme-main-color') || '#16b777'},
|
||||
data: [
|
||||
{name: 'Make', value: 1},
|
||||
{name: 'PHP', value: 2, selected: true,},
|
||||
{name: 'Great Again', value: 3, selected: true,},
|
||||
]
|
||||
})
|
||||
|
||||
ea.listen();
|
||||
},
|
||||
stock: function () {
|
||||
ea.listen();
|
||||
},
|
||||
recycle: function () {
|
||||
init.index_url = init.recycle_url;
|
||||
ea.table.render({
|
||||
init: init,
|
||||
toolbar: ['refresh',
|
||||
[{
|
||||
class: 'layui-btn layui-btn-sm',
|
||||
method: 'get',
|
||||
field: 'id',
|
||||
icon: 'fa fa-refresh',
|
||||
text: '全部恢复',
|
||||
title: '确定恢复?',
|
||||
auth: 'recycle',
|
||||
url: init.recycle_url + '?type=restore',
|
||||
checkbox: true
|
||||
}, {
|
||||
class: 'layui-btn layui-btn-danger layui-btn-sm',
|
||||
method: 'get',
|
||||
field: 'id',
|
||||
icon: 'fa fa-delete',
|
||||
text: '彻底删除',
|
||||
title: '确定彻底删除?',
|
||||
auth: 'recycle',
|
||||
url: init.recycle_url + '?type=delete',
|
||||
checkbox: true
|
||||
}], 'export',
|
||||
],
|
||||
cols: [[
|
||||
{type: "checkbox"},
|
||||
{field: 'id', width: 80, title: 'ID', searchOp: '='},
|
||||
{field: 'sort', width: 80, title: '排序', edit: 'text'},
|
||||
{field: 'cate_id', minWidth: 80, title: '商品分类', search: 'select', selectList: cateSelects, laySearch: true},
|
||||
{field: 'title', minWidth: 80, title: '商品名称'},
|
||||
{field: 'logo', minWidth: 80, title: '分类图片', search: false, templet: ea.table.image},
|
||||
{field: 'status', title: '状态', width: 85, selectList: {0: '禁用', 1: '启用'}},
|
||||
// 演示多选,实际数据库并无 status2 字段,搜索后会报错
|
||||
{
|
||||
field: 'status2', title: '演示多选', width: 105, search: 'xmSelect', selectList: {1: '模拟选项1', 2: '模拟选项2', 3: '模拟选项3', 4: '模拟选项4', 5: '模拟选项5'}, hide: true,
|
||||
searchOp: 'in', templet: function (res) {
|
||||
// 根据自己实际项目进行输出
|
||||
return res?.status2 || '模拟数据'
|
||||
}
|
||||
},
|
||||
{field: 'create_time', minWidth: 80, title: '创建时间', search: 'range'},
|
||||
{field: 'delete_time', minWidth: 80, title: '删除时间', search: 'range'},
|
||||
{
|
||||
width: 250,
|
||||
title: '操作',
|
||||
templet: ea.table.tool,
|
||||
operat: [
|
||||
[{
|
||||
title: '确认恢复?',
|
||||
text: '恢复数据',
|
||||
filed: 'id',
|
||||
url: init.recycle_url + '?type=restore',
|
||||
method: 'get',
|
||||
auth: 'recycle',
|
||||
class: 'layui-btn layui-btn-xs layui-btn-success',
|
||||
}, {
|
||||
title: '想好了吗?',
|
||||
text: '彻底删除',
|
||||
filed: 'id',
|
||||
method: 'get',
|
||||
url: init.recycle_url + '?type=delete',
|
||||
auth: 'recycle',
|
||||
class: 'layui-btn layui-btn-xs layui-btn-normal layui-bg-red',
|
||||
}]]
|
||||
}
|
||||
]],
|
||||
});
|
||||
ea.listen();
|
||||
},
|
||||
};
|
||||
|
||||
function aiOptimization(data) {
|
||||
let layOn = $(data).attr('lay-on')
|
||||
let title = $('input[name="title"]').val()
|
||||
|
||||
// 告诉AI 你需要做什么
|
||||
let message = `优化这个标题 ${title}`
|
||||
|
||||
if ($.trim(title) === '') {
|
||||
ea.msg.error('标题不能为空', function () {
|
||||
$(data).attr('lay-on', layOn.split('Loading')[0])
|
||||
})
|
||||
return false
|
||||
}
|
||||
let url = ea.url('mall.goods/aiOptimization')
|
||||
ea.request.post({url: url, data: {message: message}}, function (res) {
|
||||
let content = res.data?.choices[0]?.message?.content
|
||||
// stream 为true 时,AI 内容会逐字输出
|
||||
let stream = true
|
||||
ea.ai.chat(content, {stream: stream}, function () {
|
||||
$(data).attr('lay-on', layOn.split('Loading')[0])
|
||||
})
|
||||
}, function (error) {
|
||||
ea.msg.error(error.msg, function () {
|
||||
$(data).attr('lay-on', layOn.split('Loading')[0])
|
||||
})
|
||||
})
|
||||
}
|
||||
});
|
||||
114
public/static/admin/js/mall/order.js
Normal file
@ -0,0 +1,114 @@
|
||||
define(["jquery", "easy-admin"], function ($, ea) {
|
||||
|
||||
var init = {
|
||||
table_elem: '#currentTable',
|
||||
table_render_id: 'currentTableRenderId',
|
||||
index_url: 'mall.order/index',
|
||||
add_url: 'mall.order/add',
|
||||
edit_url: 'mall.order/edit',
|
||||
delete_url: 'mall.order/delete',
|
||||
export_url: 'mall.order/export',
|
||||
modify_url: 'mall.order/modify',
|
||||
recharge_url: 'mall.order/recharge',
|
||||
blockip_url: 'mall.order/blockip',
|
||||
recycle_url: 'mall.order/recycle',
|
||||
};
|
||||
|
||||
let checkTimer = null; // 定时器对象
|
||||
let autoCheckEnabled = true; // 默认启用
|
||||
let autoCheckId = 1; // 默认启用
|
||||
|
||||
return {
|
||||
|
||||
index: function () {
|
||||
ea.table.render({
|
||||
init: init,
|
||||
toolbar: [
|
||||
'refresh', 'delete', 'export', 'recycle'
|
||||
],
|
||||
cols: [[
|
||||
{type: "checkbox"},
|
||||
{field: 'id', width: 80, title: 'ID', searchOp: '='},
|
||||
{field: 'rid', width: 100, title: '订单号'},
|
||||
{field: 'money', width: 100, title: '金额'},
|
||||
{field: 'ip', width: 100, title: 'IP'},
|
||||
{field: 'url', width: 100, title: '支付链接', edit: true},
|
||||
{field: 'status', title: '状态', width: 85, selectList: {0: '未分配', 1: '已分配', 2: '已支付'}},
|
||||
{field: 'create_time', minWidth: 80, title: '创建时间', search: 'range'},
|
||||
{
|
||||
width: 500,
|
||||
title: '操作',
|
||||
templet: ea.table.tool,
|
||||
operat: [
|
||||
[{
|
||||
class: 'layui-btn layui-btn-success layui-btn-xs',
|
||||
method: 'open',
|
||||
field: 'id',
|
||||
text: '编辑支付链接',
|
||||
url: init.edit_url,
|
||||
extend: 'data-width="90%" data-height="95%"',
|
||||
}],
|
||||
[{
|
||||
class: 'layui-btn layui-btn-danger layui-btn-xs',
|
||||
method: 'get',
|
||||
field: 'id',
|
||||
text: '确认支付',
|
||||
url: init.recharge_url,
|
||||
}],
|
||||
[{
|
||||
class: 'layui-btn layui-btn-danger layui-btn-xs',
|
||||
method: 'get',
|
||||
field: 'id',
|
||||
text: 'IP拉黑',
|
||||
url: init.blockip_url,
|
||||
}],
|
||||
'delete'
|
||||
]
|
||||
}
|
||||
]],
|
||||
done: (res) => {
|
||||
$.each(res.data, function (idx, item) {
|
||||
if (item.status === 1) {
|
||||
$(`tr[data-index="${idx}"]`).css({
|
||||
'background': 'linear-gradient(to left, #77eb7c, #bbffbe, #ffffff, transparent)',
|
||||
'border': 'none',
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
// 🔁 定时检测逻辑
|
||||
checkTimer = setInterval(function () {
|
||||
ea.request.get({
|
||||
url: ea.url('index/get_order'),
|
||||
}, function (res) {
|
||||
if (res.code === 1 && res.data.count > 0) {
|
||||
let audio = document.getElementById('order-audio');
|
||||
if (!audio) {
|
||||
audio = document.createElement('audio');
|
||||
audio.id = 'order-audio';
|
||||
audio.src = '/1.mp3'; // 你的提示音路径
|
||||
audio.autoplay = true;
|
||||
audio.volume = 1.0;
|
||||
document.body.appendChild(audio);
|
||||
}
|
||||
if (autoCheckId !== res.data.rid) {
|
||||
autoCheckId = res.data.rid;
|
||||
layui.table.reload(init.table_render_id);
|
||||
}
|
||||
audio.play().catch(err => console.warn('播放失败', err));
|
||||
}
|
||||
}, function (err) {
|
||||
console.error('检查未分配订单失败', err);
|
||||
});
|
||||
}, 5000); // 每10秒执行一次
|
||||
|
||||
ea.listen();
|
||||
},
|
||||
|
||||
edit: function () {
|
||||
ea.listen();
|
||||
},
|
||||
};
|
||||
|
||||
});
|
||||
92
public/static/admin/js/system/admin.js
Normal file
@ -0,0 +1,92 @@
|
||||
define(["jquery", "easy-admin"], function ($, ea) {
|
||||
|
||||
var init = {
|
||||
table_elem: '#currentTable',
|
||||
table_render_id: 'currentTableRenderId',
|
||||
index_url: 'system.admin/index',
|
||||
add_url: 'system.admin/add',
|
||||
edit_url: 'system.admin/edit',
|
||||
delete_url: 'system.admin/delete',
|
||||
modify_url: 'system.admin/modify',
|
||||
export_url: 'system.admin/export',
|
||||
password_url: 'system.admin/password',
|
||||
};
|
||||
|
||||
return {
|
||||
|
||||
index: function () {
|
||||
|
||||
let _table = ea.table.render({
|
||||
init: init,
|
||||
cols: [[
|
||||
{type: "checkbox"},
|
||||
{field: 'id', width: 80, title: 'ID', searchOp: '='},
|
||||
{field: 'sort', width: 80, title: '排序', edit: 'text'},
|
||||
{field: 'username', minWidth: 80, title: '登录账户'},
|
||||
{field: 'head_img', minWidth: 80, title: '头像', search: false, templet: ea.table.image},
|
||||
{field: 'phone', minWidth: 80, title: '手机'},
|
||||
{field: 'login_num', minWidth: 80, title: '登录次数'},
|
||||
{
|
||||
field: 'role', minWidth: 80, title: '角色权限', align: 'left', search: 'none', templet: function (d) {
|
||||
let auth_ids = d.auth_ids || []
|
||||
let html = ``
|
||||
$.each(auth_ids, (idx, item) =>
|
||||
html += `<span class="layui-badge">${auth_list[item] || '-'}</span> `
|
||||
)
|
||||
return html
|
||||
}
|
||||
},
|
||||
{field: 'remark', minWidth: 80, title: '备注信息'},
|
||||
{field: 'status', title: '状态', width: 85, search: 'select', selectList: {0: '禁用', 1: '启用'}, templet: ea.table.switch},
|
||||
{field: 'create_time', minWidth: 80, title: '创建时间', search: 'range'},
|
||||
{
|
||||
width: 250,
|
||||
title: '操作',
|
||||
templet: ea.table.tool,
|
||||
operat: [
|
||||
'edit',
|
||||
[{
|
||||
text: '设置密码',
|
||||
url: init.password_url,
|
||||
method: 'open',
|
||||
auth: 'password',
|
||||
class: 'layui-btn layui-btn-normal layui-btn-xs',
|
||||
}],
|
||||
'delete'
|
||||
]
|
||||
}
|
||||
]],
|
||||
});
|
||||
|
||||
$('body').on('click', '[data-table-reset]', function () {
|
||||
$('.layui-menu li').removeClass('layui-menu-item-checked').animate(
|
||||
{}, 0, () => $('.layui-menu li:eq(0)').addClass('layui-menu-item-checked')
|
||||
)
|
||||
})
|
||||
layui.util.on({
|
||||
authSearch: function (e) {
|
||||
let auth_id = $(this).data('auth_id')
|
||||
$('.layui-menu li').removeClass('layui-menu-item-checked').animate(
|
||||
{}, 0, () => $(this).parents('li').addClass('layui-menu-item-checked')
|
||||
)
|
||||
let _where = auth_id ? {
|
||||
filter: JSON.stringify({auth_ids: auth_id}),
|
||||
op: JSON.stringify({auth_ids: 'find_in_set'})
|
||||
} : {}
|
||||
_table.reload({where: _where})
|
||||
},
|
||||
})
|
||||
|
||||
ea.listen();
|
||||
},
|
||||
add: function () {
|
||||
ea.listen();
|
||||
},
|
||||
edit: function () {
|
||||
ea.listen();
|
||||
},
|
||||
password: function () {
|
||||
ea.listen();
|
||||
}
|
||||
};
|
||||
});
|
||||
107
public/static/admin/js/system/auth.js
Normal file
@ -0,0 +1,107 @@
|
||||
define(["jquery", "easy-admin"], function ($, ea) {
|
||||
|
||||
var init = {
|
||||
table_elem: '#currentTable',
|
||||
table_render_id: 'currentTableRenderId',
|
||||
index_url: 'system.auth/index',
|
||||
add_url: 'system.auth/add',
|
||||
edit_url: 'system.auth/edit',
|
||||
delete_url: 'system.auth/delete',
|
||||
export_url: 'system.auth/export',
|
||||
modify_url: 'system.auth/modify',
|
||||
authorize_url: 'system.auth/authorize',
|
||||
};
|
||||
|
||||
return {
|
||||
|
||||
index: function () {
|
||||
ea.table.render({
|
||||
init: init,
|
||||
cols: [[
|
||||
{type: "checkbox"},
|
||||
{field: 'id', width: 80, title: 'ID', searchOp: '='},
|
||||
{field: 'sort', width: 80, title: '排序', edit: 'text'},
|
||||
{field: 'title', minWidth: 80, title: '权限名称'},
|
||||
{field: 'remark', minWidth: 80, title: '备注信息'},
|
||||
{field: 'status', title: '状态', width: 85, search: 'select', selectList: {0: '禁用', 1: '启用'}, templet: ea.table.switch},
|
||||
{field: 'create_time', minWidth: 80, title: '创建时间', search: 'range'},
|
||||
{
|
||||
width: 250,
|
||||
title: '操作',
|
||||
templet: ea.table.tool,
|
||||
operat: [
|
||||
'edit',
|
||||
[{
|
||||
text: '授权',
|
||||
url: init.authorize_url,
|
||||
method: 'open',
|
||||
auth: 'authorize',
|
||||
class: 'layui-btn layui-btn-normal layui-btn-xs',
|
||||
}],
|
||||
'delete'
|
||||
]
|
||||
}
|
||||
]],
|
||||
});
|
||||
|
||||
ea.listen();
|
||||
},
|
||||
add: function () {
|
||||
ea.listen();
|
||||
},
|
||||
edit: function () {
|
||||
ea.listen();
|
||||
},
|
||||
authorize: function () {
|
||||
|
||||
let setting = {
|
||||
check: {
|
||||
enable: true,
|
||||
chkStyle: "checkbox",
|
||||
},
|
||||
view: {
|
||||
showIcon: true,
|
||||
showLine: true,
|
||||
selectedMulti: false,
|
||||
dblClickExpand: false
|
||||
}, callback: {
|
||||
onClick: function (e, treeId, treeNode, clickFlag) {
|
||||
treeObj.checkNode(treeNode, !treeNode.checked, true);
|
||||
}
|
||||
}
|
||||
};
|
||||
let treeObj
|
||||
let treeData = []
|
||||
ea.request.get({url: window.location.href}, function (res) {
|
||||
res.data = res.data || [];
|
||||
$.each(res.data, function (index, value) {
|
||||
treeData[index] = []
|
||||
treeData[index].id = value.id
|
||||
treeData[index].name = value.title
|
||||
treeData[index].pId = 0
|
||||
treeData[index].open = true
|
||||
let children = value.children
|
||||
treeData[index]['children'] = []
|
||||
$.each(children, function (idx, val) {
|
||||
treeData[index]['children'].push({id: val.id, name: val.title, checked: val.checked, pId: value.id})
|
||||
})
|
||||
})
|
||||
$.fn.zTree.init($("#tree"), setting, treeData);
|
||||
treeObj = $.fn.zTree.getZTreeObj("tree");
|
||||
}
|
||||
);
|
||||
|
||||
ea.listen(function (data) {
|
||||
let checkedData = treeObj.getCheckedNodes();
|
||||
let ids = []
|
||||
for (var i = 0; i < checkedData.length; i++) {
|
||||
ids.push(checkedData[i].id)
|
||||
}
|
||||
data.node = JSON.stringify(ids);
|
||||
return data;
|
||||
});
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
)
|
||||
34
public/static/admin/js/system/config.js
Normal file
@ -0,0 +1,34 @@
|
||||
define(["jquery", "easy-admin"], function ($, ea) {
|
||||
|
||||
var form = layui.form;
|
||||
|
||||
return {
|
||||
index: function () {
|
||||
var _group = 'site'
|
||||
let tabs = layui.tabs
|
||||
var TABS_ID = 'docDemoTabBrief';
|
||||
tabs.on(`afterChange(${TABS_ID})`, function (data) {
|
||||
_group = $(this).data('group')
|
||||
})
|
||||
let _upload_type = upload_type || 'local'
|
||||
$('.upload_type').addClass('layui-hide')
|
||||
$('.' + _upload_type).removeClass('layui-hide')
|
||||
|
||||
form.on("radio(upload_type)", function (data) {
|
||||
_upload_type = this.value;
|
||||
$('.upload_type').addClass('layui-hide')
|
||||
$('.' + _upload_type).removeClass('layui-hide')
|
||||
});
|
||||
|
||||
form.on("submit", function (data) {
|
||||
data.field['group'] = _group
|
||||
});
|
||||
|
||||
ea.listen('', function (res) {
|
||||
ea.msg.success(res.msg);
|
||||
}, function (err) {
|
||||
ea.msg.error(err.msg);
|
||||
});
|
||||
}
|
||||
};
|
||||
});
|
||||
208
public/static/admin/js/system/curd_generate.js
Normal file
@ -0,0 +1,208 @@
|
||||
define(["jquery", "easy-admin", "miniTab"], function ($, ea, miniTab) {
|
||||
|
||||
var form = layui.form;
|
||||
var table = layui.table;
|
||||
|
||||
var init = {
|
||||
save_url: 'system.curd_generate/save',
|
||||
};
|
||||
|
||||
return {
|
||||
index: function () {
|
||||
|
||||
let element = layui.element;
|
||||
element.on('tab(curd-hash)', function (obj) {
|
||||
let id = obj.id
|
||||
let _html = `
|
||||
<div style="padding: 50px 25px;">
|
||||
<fieldset class="layui-elem-field">
|
||||
<legend>提示</legend>
|
||||
<div class="layui-field-box">
|
||||
<p><a class="layui-font-blue" target="_blank" rel="nofollow" href="https://edocs.easyadmin8.top/#/md/curd/command">命令可查询文档</a></p>
|
||||
</div>
|
||||
</fieldset>
|
||||
<form class="layui-form layui-form-pane" action="">
|
||||
<div class="layui-form-item">
|
||||
<div class="layui-input-group" style="width: 100%;">
|
||||
<div class="layui-input-split layui-input-prefix" style="width: 100px;">
|
||||
php think curd
|
||||
</div>
|
||||
<input type="text" class="layui-input" name="command" placeholder="在这里输入命令参数" lay-verify="required"/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-form-item">
|
||||
<button class="layui-btn layui-btn-fluid layui-bg-cyan" type="button" lay-submit="system.CurdGenerate/save?type=console" lay-filter="curd-console-submit">一键执行</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
`
|
||||
if (id == '2') {
|
||||
layer.open({
|
||||
title: '命令行一键生成 CRUD/CRUD',
|
||||
type: 1,
|
||||
shade: 0.3,
|
||||
shadeClose: false,
|
||||
area: ['42%', 'auto'],
|
||||
content: _html,
|
||||
success: function () {
|
||||
form.on('submit(curd-console-submit)', function (data) {
|
||||
let field = data.field
|
||||
let url = $(this).attr('lay-submit')
|
||||
let options = {url: ea.url(url), data: field}
|
||||
ea.msg.confirm('确认执行该操作?<br>如果命令行中存在强制覆盖或者删除将会马上执行!', function () {
|
||||
ea.request.post(options, function (rs) {
|
||||
let msg = rs.msg || '未知~'
|
||||
layer.msg(msg.replace(/\n/g, '<br>'), {shade: 0.3, shadeClose: true})
|
||||
let code = rs?.code || '-1'
|
||||
if (code != '1') return
|
||||
})
|
||||
})
|
||||
})
|
||||
},
|
||||
end: function () {
|
||||
element.tabChange('curd-hash', '1');
|
||||
}
|
||||
})
|
||||
}
|
||||
});
|
||||
|
||||
miniTab.listen();
|
||||
let createStatus = false
|
||||
let tb_prefix
|
||||
let tb_name
|
||||
form.on('submit(search)', function (data) {
|
||||
let field = data.field
|
||||
tb_prefix = field.tb_prefix
|
||||
tb_name = field.tb_name
|
||||
ea.request.get({url: $(this).attr('lay-submit'), prefix: true, data: field}, function (res) {
|
||||
createStatus = true
|
||||
$('.tableShow').removeClass('layui-hide')
|
||||
$('.table-text').text(field.tb_prefix + field.tb_name)
|
||||
let _data = res.data
|
||||
|
||||
let fieldsHtml = ``
|
||||
$.each(_data.list, function (i, v) {
|
||||
if (v.Key != 'PRI') fieldsHtml += `
|
||||
<div class="input_tag">
|
||||
<input lay-skin="tag" class="checkbox_${v.Field}" type="checkbox"
|
||||
title="${v.Field} (${v.Type})" value="${v.Field}" lay-filter="checkbox-filter" />
|
||||
</div>
|
||||
`
|
||||
})
|
||||
$('.table_fields').html(fieldsHtml)
|
||||
form.render('checkbox')
|
||||
|
||||
form.on('checkbox(checkbox-filter)', function (data) {
|
||||
let _checked = data.elem.checked
|
||||
$.each($(`.checkbox_${data.value}`), function (i, v) {
|
||||
if (i > 0) $(this).prop('checked', false);
|
||||
})
|
||||
$(data.elem).prop('checked', _checked);
|
||||
});
|
||||
|
||||
table.render({
|
||||
elem: '#currentTable', cols: [
|
||||
[
|
||||
{field: 'name', title: '字段', minWidth: 80},
|
||||
{field: 'type', title: '类型', minWidth: 80},
|
||||
{field: 'key', title: '键', minWidth: 80},
|
||||
{field: 'extra', title: '是否自增', minWidth: 80},
|
||||
{field: 'null', title: '是否为空', minWidth: 80},
|
||||
{field: 'desc', title: '描述', minWidth: 80},
|
||||
]
|
||||
], data: _data.data, page: false,
|
||||
});
|
||||
}, function (error) {
|
||||
createStatus = false
|
||||
ea.msg.error(error.msg)
|
||||
$('.tableShow').addClass('layui-hide')
|
||||
return
|
||||
})
|
||||
form.on('submit(add)', function (data) {
|
||||
let table = $('.table-text').text()
|
||||
if (!table || !createStatus) {
|
||||
ea.msg.error('请先查询数据')
|
||||
return
|
||||
}
|
||||
let url = $(this).attr('lay-submit')
|
||||
let fields = {}
|
||||
$.each($('.table_fields'), function (i, v) {
|
||||
let _name = $(this).data('name')
|
||||
let _inputs = {}
|
||||
$.each($(v).find('.input_tag'), function (i, v) {
|
||||
let checkedVal = $(this).find('input:checked').val()
|
||||
if (checkedVal) {
|
||||
_inputs[i] = checkedVal
|
||||
}
|
||||
})
|
||||
fields[_name] = _inputs
|
||||
})
|
||||
let options = {url: url, prefix: true, data: {tb_prefix: tb_prefix, tb_name: tb_name, tb_fields: fields}}
|
||||
layer.confirm('确定要自动生成【' + table + '】对应的CURD?', function (index) {
|
||||
ea.request.post(options, function (res) {
|
||||
createStatus = true
|
||||
ea.msg.success(res.msg)
|
||||
appendHtml(res['data']['result'], res['data']['link'])
|
||||
}, function (error) {
|
||||
createStatus = false
|
||||
let code = error.code
|
||||
if (code != '1') {
|
||||
if (code < 0) {
|
||||
createStatus = true
|
||||
layer.confirm(error.msg, {
|
||||
btn: ['确定强制覆盖生成', '取消'], title: '提示', icon: 0,
|
||||
yes: function () {
|
||||
options.prefix = false
|
||||
options.data.force = 1
|
||||
ea.request.post(options, function (rs) {
|
||||
createStatus = true
|
||||
ea.msg.success(rs.msg)
|
||||
appendHtml(rs['data']['result'], rs['data']['link'])
|
||||
})
|
||||
}
|
||||
});
|
||||
return
|
||||
}
|
||||
ea.msg.error(error.msg)
|
||||
return
|
||||
}
|
||||
})
|
||||
})
|
||||
})
|
||||
|
||||
form.on('submit(delete)', function (data) {
|
||||
let table = $('.table-text').text()
|
||||
if (!table || !createStatus) {
|
||||
ea.msg.error('请先查询数据')
|
||||
return
|
||||
}
|
||||
let url = $(this).attr('lay-submit')
|
||||
let options = {url: url, prefix: true, data: {tb_prefix: tb_prefix, tb_name: tb_name}}
|
||||
layer.confirm('确定要删除【' + table + '】对应CURD的文件?<br>确定清楚自己在做什么!', function (index) {
|
||||
ea.request.post(options, function (res) {
|
||||
ea.msg.success(res.msg)
|
||||
$('.table-text').text('')
|
||||
$('.file-list').empty()
|
||||
$('.table_fields').empty()
|
||||
$('.tableShow').addClass('layui-hide')
|
||||
createStatus = false
|
||||
})
|
||||
})
|
||||
})
|
||||
return
|
||||
})
|
||||
|
||||
function appendHtml(array, link) {
|
||||
$('.file-list').empty()
|
||||
let html = ''
|
||||
$.each(array, function (idx, item) {
|
||||
html += '<li class="layui-form-item">' + item + '</li>'
|
||||
})
|
||||
html += '<a layuimini-content-href="' + link + '" data-title="页面预览">' +
|
||||
'<button class="layui-btn"><i class="layui-icon layui-icon-link"></i> 自动生成页面预览</button>' +
|
||||
'</a>'
|
||||
$('.file-list').html(html)
|
||||
}
|
||||
}
|
||||
};
|
||||
});
|
||||
92
public/static/admin/js/system/log.js
Normal file
@ -0,0 +1,92 @@
|
||||
define(["jquery", "easy-admin"], function ($, ea) {
|
||||
|
||||
|
||||
var init = {
|
||||
table_elem: '#currentTable',
|
||||
table_render_id: 'currentTableRenderId',
|
||||
index_url: 'system.log/index',
|
||||
export_url: 'system.log/export',
|
||||
deleteMonthLog_url: 'system.log/deleteMonthLog',
|
||||
};
|
||||
|
||||
return {
|
||||
index: function () {
|
||||
var util = layui.util;
|
||||
ea.table.render({
|
||||
init: init,
|
||||
lineStyle: 'height: auto;word-break: break-all;',
|
||||
toolbar: ['refresh', 'export',
|
||||
[{
|
||||
text: '框架日志',
|
||||
url: 'system.log/record',
|
||||
method: 'open',
|
||||
auth: 'record',
|
||||
class: 'layui-btn layui-btn-sm',
|
||||
icon: 'fa fa-book',
|
||||
extend: 'data-width="95%" data-height="95%"'
|
||||
}, {
|
||||
text: '删除部分日志',
|
||||
url: 'system.log/deleteMonthLog',
|
||||
method: 'open',
|
||||
auth: 'deleteMonthLog',
|
||||
class: 'layui-btn layui-btn-sm layui-btn-danger',
|
||||
icon: 'fa fa-remove',
|
||||
extend: 'data-width="35%" data-height="42%"'
|
||||
},]
|
||||
],
|
||||
cols: [[
|
||||
{field: 'id', width: 80, title: 'ID', search: false},
|
||||
{field: 'month', width: 80, title: '日志月份', hide: true, search: 'time', timeType: 'month', searchValue: util.toDateString(new Date(), 'yyyy-MM')},
|
||||
{
|
||||
field: 'admin.username', width: 100, title: '后台用户', search: false, templet: function (res) {
|
||||
let admin = res.admin
|
||||
return admin ? admin.username : '-'
|
||||
}
|
||||
},
|
||||
{field: 'method', width: 100, title: '请求方法'},
|
||||
{field: 'title', minWidth: 180, title: '请求标题'},
|
||||
{field: 'ip', width: 150, title: 'IP地址'},
|
||||
{field: 'url', minWidth: 150, title: '路由地址', align: "left"},
|
||||
{
|
||||
field: 'content', minWidth: 200, title: '请求数据', align: "left", templet: function (res) {
|
||||
let html = '<div class="layui-colla-item">' +
|
||||
'<div class="layui-colla-title">点击预览</div>' +
|
||||
'<div class="layui-colla-content">' + prettyFormat(JSON.stringify(res.content)) + '</div>' +
|
||||
'</div>'
|
||||
return '<div class="layui-collapse" lay-accordion>' + html + '</div>'
|
||||
}
|
||||
},
|
||||
{
|
||||
field: 'response', minWidth: 200, title: '回调数据', align: "left", templet: function (res) {
|
||||
let html = '<div class="layui-colla-item">' +
|
||||
'<div class="layui-colla-title">点击预览</div>' +
|
||||
'<div class="layui-colla-content">' + prettyFormat(JSON.stringify(res.response)) + '</div>' +
|
||||
'</div>'
|
||||
return '<div class="layui-collapse" lay-accordion>' + html + '</div>'
|
||||
}
|
||||
},
|
||||
{field: 'create_time', minWidth: 100, title: '创建时间', search: 'range'},
|
||||
]],
|
||||
done: function () {
|
||||
layui.element.render('collapse')
|
||||
}
|
||||
});
|
||||
ea.listen();
|
||||
},
|
||||
deleteMonthLog: function () {
|
||||
layui.form.on('submit(submit)', function (data) {
|
||||
let field = data.field
|
||||
let options = {
|
||||
url: ea.url(init.deleteMonthLog_url),
|
||||
data: field,
|
||||
}
|
||||
ea.msg.confirm('确认执行该操作?重要数据请先做好相关备份!', function () {
|
||||
ea.request.post(options, function (rs) {
|
||||
let msg = rs.msg || '未知~'
|
||||
layer.msg(msg.replace(/\n/g, '<br>'), {shade: 0.3, shadeClose: true, time: 2000})
|
||||
})
|
||||
})
|
||||
})
|
||||
}
|
||||
};
|
||||
});
|
||||
213
public/static/admin/js/system/menu.js
Normal file
@ -0,0 +1,213 @@
|
||||
define(["jquery", "easy-admin", "treetable", "iconPickerFa", "autocomplete"], function ($, ea) {
|
||||
|
||||
var table = layui.table,
|
||||
treetable = layui.treetable,
|
||||
iconPickerFa = layui.iconPickerFa,
|
||||
autocomplete = layui.autocomplete;
|
||||
|
||||
var init = {
|
||||
table_elem: '#currentTable',
|
||||
table_render_id: 'currentTableRenderId',
|
||||
index_url: 'system.menu/index',
|
||||
add_url: 'system.menu/add',
|
||||
delete_url: 'system.menu/delete',
|
||||
edit_url: 'system.menu/edit',
|
||||
modify_url: 'system.menu/modify',
|
||||
};
|
||||
|
||||
return {
|
||||
index: function () {
|
||||
|
||||
var renderTable = function () {
|
||||
layer.load(2);
|
||||
treetable.render({
|
||||
where: {limit: 9999},
|
||||
treeColIndex: 1,
|
||||
treeSpid: 0,
|
||||
homdPid: 99999999,
|
||||
treeIdName: 'id',
|
||||
treePidName: 'pid',
|
||||
url: ea.url(init.index_url),
|
||||
elem: init.table_elem,
|
||||
id: init.table_render_id,
|
||||
toolbar: '#toolbar',
|
||||
page: false,
|
||||
skin: 'line',
|
||||
|
||||
// @todo 不直接使用ea.table.render(); 进行表格初始化, 需要使用 ea.table.formatCols(); 方法格式化`cols`列数据
|
||||
cols: ea.table.formatCols([[
|
||||
{type: 'checkbox'},
|
||||
{field: 'title', width: 250, title: '菜单名称', align: 'left'},
|
||||
{field: 'icon', width: 80, title: '图标', templet: ea.table.icon},
|
||||
{field: 'href', minWidth: 120, title: '菜单链接'},
|
||||
{
|
||||
field: 'is_home',
|
||||
width: 80,
|
||||
title: '类型',
|
||||
templet: function (d) {
|
||||
if (d.pid === 99999999) {
|
||||
return '<span class="layui-badge layui-bg-blue">首页</span>';
|
||||
}
|
||||
if (d.pid === 0) {
|
||||
return '<span class="layui-badge layui-bg-gray">模块</span>';
|
||||
} else {
|
||||
return '<span class="layui-badge-rim">菜单</span>';
|
||||
}
|
||||
}
|
||||
},
|
||||
{field: 'status', title: '状态', width: 85, templet: ea.table.switch},
|
||||
{field: 'sort', width: 80, title: '排序', edit: 'text'},
|
||||
{
|
||||
width: 230,
|
||||
title: '操作',
|
||||
templet: ea.table.tool,
|
||||
operat: [
|
||||
[{
|
||||
text: '添加下级',
|
||||
url: init.add_url,
|
||||
method: 'open',
|
||||
auth: 'add',
|
||||
class: 'layui-btn layui-btn-xs layui-btn-normal',
|
||||
}, {
|
||||
text: '编辑',
|
||||
url: init.edit_url,
|
||||
method: 'open',
|
||||
auth: 'edit',
|
||||
class: 'layui-btn layui-btn-xs layui-btn-success',
|
||||
}],
|
||||
'delete'
|
||||
]
|
||||
}
|
||||
]], init),
|
||||
done: function () {
|
||||
layer.closeAll('loading');
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
renderTable();
|
||||
|
||||
$('body').on('click', '[data-treetable-refresh]', function () {
|
||||
renderTable();
|
||||
});
|
||||
|
||||
$('body').on('click', '[data-treetable-delete]', function () {
|
||||
var tableId = $(this).attr('data-treetable-delete'),
|
||||
url = $(this).attr('data-url');
|
||||
tableId = tableId || init.table_render_id;
|
||||
url = url != undefined ? ea.url(url) : window.location.href;
|
||||
var checkStatus = table.checkStatus(tableId),
|
||||
data = checkStatus.data;
|
||||
if (data.length <= 0) {
|
||||
ea.msg.error('请勾选需要删除的数据');
|
||||
return false;
|
||||
}
|
||||
var ids = [];
|
||||
$.each(data, function (i, v) {
|
||||
ids.push(v.id);
|
||||
});
|
||||
ea.msg.confirm('确定删除?', function () {
|
||||
ea.request.post({
|
||||
url: url,
|
||||
data: {
|
||||
id: ids
|
||||
},
|
||||
}, function (res) {
|
||||
ea.msg.success(res.msg, function () {
|
||||
renderTable();
|
||||
});
|
||||
});
|
||||
});
|
||||
return false;
|
||||
});
|
||||
|
||||
$('body').on('click', '[data-treetable-arrow]', function () {
|
||||
const $icon = $(this).find('i');
|
||||
const $textNode = $icon[0].nextSibling;
|
||||
if ($icon.hasClass('fa-arrow-up')) {
|
||||
treetable.foldAll(init.table_elem);
|
||||
$icon.removeClass('fa-arrow-up').addClass('fa-arrow-down');
|
||||
$textNode.textContent = ' 一键展开';
|
||||
$(this).attr('data-arrow', 'down');
|
||||
} else {
|
||||
treetable.expandAll(init.table_elem);
|
||||
$icon.removeClass('fa-arrow-down').addClass('fa-arrow-up');
|
||||
$textNode.textContent = ' 一键折叠';
|
||||
$(this).attr('data-arrow', 'up');
|
||||
}
|
||||
})
|
||||
|
||||
ea.table.listenSwitch({filter: 'status', url: init.modify_url});
|
||||
|
||||
ea.table.listenEdit(init, 'currentTable', init.table_render_id, true);
|
||||
|
||||
ea.listen();
|
||||
},
|
||||
add: function () {
|
||||
$(function () {
|
||||
iconPickerFa.render({
|
||||
elem: '#icon',
|
||||
url: PATH_CONFIG.iconLess,
|
||||
limit: 12,
|
||||
click: function (data) {
|
||||
$('#icon').val('fa ' + data.icon);
|
||||
},
|
||||
success: function (d) {
|
||||
console.log(d);
|
||||
}
|
||||
});
|
||||
})
|
||||
autocomplete.render({
|
||||
elem: $('#href')[0],
|
||||
url: ea.url('system.menu/getMenuTips'),
|
||||
template_val: '{{d.node}}',
|
||||
template_txt: '{{d.node}} <span class=\'layui-badge layui-bg-gray\'>{{d.title}}</span>',
|
||||
onselect: function (resp) {
|
||||
}
|
||||
});
|
||||
|
||||
ea.listen(function (data) {
|
||||
return data;
|
||||
}, function (res) {
|
||||
ea.msg.success(res.msg, function () {
|
||||
var index = parent.layer.getFrameIndex(window.name);
|
||||
parent.layer.close(index);
|
||||
parent.$('[data-treetable-refresh]').trigger("click");
|
||||
});
|
||||
});
|
||||
},
|
||||
edit: function () {
|
||||
$(function () {
|
||||
iconPickerFa.render({
|
||||
elem: '#icon',
|
||||
url: PATH_CONFIG.iconLess,
|
||||
limit: 12,
|
||||
click: function (data) {
|
||||
$('#icon').val('fa ' + data.icon);
|
||||
},
|
||||
success: function (d) {
|
||||
console.log(d);
|
||||
}
|
||||
});
|
||||
})
|
||||
autocomplete.render({
|
||||
elem: $('#href')[0],
|
||||
url: ea.url('system.menu/getMenuTips'),
|
||||
template_val: '{{d.node}}',
|
||||
template_txt: '{{d.node}} <span class=\'layui-badge layui-bg-gray\'>{{d.title}}</span>',
|
||||
onselect: function (resp) {
|
||||
}
|
||||
});
|
||||
|
||||
ea.listen(function (data) {
|
||||
return data;
|
||||
}, function (res) {
|
||||
ea.msg.success(res.msg, function () {
|
||||
var index = parent.layer.getFrameIndex(window.name);
|
||||
parent.layer.close(index);
|
||||
parent.$('[data-treetable-refresh]').trigger("click");
|
||||
});
|
||||
});
|
||||
}
|
||||
};
|
||||
});
|
||||
83
public/static/admin/js/system/node.js
Normal file
@ -0,0 +1,83 @@
|
||||
define(["jquery", "easy-admin"], function ($, ea) {
|
||||
|
||||
var init = {
|
||||
table_elem: '#currentTable',
|
||||
table_render_id: 'currentTableRenderId',
|
||||
index_url: 'system.node/index',
|
||||
add_url: 'system.node/add',
|
||||
edit_url: 'system.node/edit',
|
||||
delete_url: 'system.node/delete',
|
||||
modify_url: 'system.node/modify',
|
||||
menu_url: 'system.node/refreshMenu',
|
||||
};
|
||||
|
||||
return {
|
||||
|
||||
index: function () {
|
||||
ea.table.render({
|
||||
init: init,
|
||||
search: false,
|
||||
page: false,
|
||||
toolbar: ['refresh',
|
||||
[{
|
||||
text: '更新节点',
|
||||
title: '确定更新新节点?',
|
||||
url: 'system.node/refreshNode?force=0',
|
||||
method: 'request',
|
||||
auth: 'refresh',
|
||||
class: 'layui-btn layui-btn-success layui-btn-sm',
|
||||
icon: 'fa fa-hourglass',
|
||||
extend: 'data-table="' + init.table_render_id + '"',
|
||||
}, {
|
||||
text: '强制更新节点',
|
||||
title: '该操作会覆盖已存在的节点信息。<br>确定强制更新节点?',
|
||||
url: 'system.node/refreshNode?force=1',
|
||||
method: 'request',
|
||||
auth: 'refresh',
|
||||
class: 'layui-btn layui-btn-sm layui-btn-normal',
|
||||
icon: 'fa fa-hourglass',
|
||||
extend: 'data-table="' + init.table_render_id + '"',
|
||||
}, {
|
||||
|
||||
text: '清除失效节点',
|
||||
title: '确定清除失效节点?',
|
||||
url: 'system.node/clearNode',
|
||||
method: 'request',
|
||||
auth: 'clear',
|
||||
class: 'layui-btn layui-btn-sm layui-btn-danger',
|
||||
icon: 'fa fa-trash-o',
|
||||
extend: 'data-table="' + init.table_render_id + '"',
|
||||
},{
|
||||
|
||||
text: '刷新目录菜单',
|
||||
title: '确定刷新菜单?',
|
||||
url: 'system.node/refreshMenu',
|
||||
method: 'request',
|
||||
auth: 'menu',
|
||||
class: 'layui-btn layui-btn-sm layui-btn-info',
|
||||
icon: 'fa fa-list',
|
||||
extend: 'data-table="' + init.table_render_id + '"',
|
||||
}
|
||||
]],
|
||||
cols: [[
|
||||
{
|
||||
field: 'node', minWidth: 200, align: 'left', title: '系统节点', templet: function (d) {
|
||||
return `<span>${d.node}</span>`;
|
||||
}
|
||||
},
|
||||
{field: 'title', minWidth: 80, title: '节点名称 <i class="table-edit-tips color-red">*</i>', edit: 'text'},
|
||||
{field: 'update_time', minWidth: 80, title: '更新时间', search: 'range'},
|
||||
{field: 'is_auth', title: '节点控制', width: 85, search: 'select', selectList: {0: '禁用', 1: '启用'}, templet: ea.table.switch},
|
||||
]],
|
||||
});
|
||||
|
||||
ea.listen();
|
||||
},
|
||||
add: function () {
|
||||
ea.listen();
|
||||
},
|
||||
edit: function () {
|
||||
ea.listen();
|
||||
}
|
||||
};
|
||||
});
|
||||
89
public/static/admin/js/system/quick.js
Normal file
@ -0,0 +1,89 @@
|
||||
define(["jquery", "easy-admin", "iconPickerFa", "autocomplete"], function ($, ea) {
|
||||
|
||||
var iconPickerFa = layui.iconPickerFa,
|
||||
autocomplete = layui.autocomplete;
|
||||
|
||||
var init = {
|
||||
table_elem: '#currentTable',
|
||||
table_render_id: 'currentTableRenderId',
|
||||
index_url: 'system.quick/index',
|
||||
add_url: 'system.quick/add',
|
||||
edit_url: 'system.quick/edit',
|
||||
delete_url: 'system.quick/delete',
|
||||
export_url: 'system.quick/export',
|
||||
modify_url: 'system.quick/modify',
|
||||
};
|
||||
|
||||
return {
|
||||
|
||||
index: function () {
|
||||
ea.table.render({
|
||||
init: init,
|
||||
cols: [[
|
||||
{type: "checkbox"},
|
||||
{field: 'id', width: 80, title: 'ID', searchOp: '='},
|
||||
{field: 'sort', width: 80, title: '排序', edit: 'text'},
|
||||
{field: 'title', minWidth: 80, title: '权限名称'},
|
||||
{field: 'icon', width: 80, title: '图标', templet: ea.table.icon},
|
||||
{field: 'href', minWidth: 120, title: '快捷链接'},
|
||||
{field: 'remark', minWidth: 80, title: '备注信息'},
|
||||
{field: 'status', title: '状态', width: 85, search: 'select', selectList: {0: '禁用', 1: '启用'}, templet: ea.table.switch},
|
||||
{field: 'create_time', minWidth: 80, title: '创建时间', search: 'range'},
|
||||
{width: 250, title: '操作', templet: ea.table.tool, operat: ['edit', 'delete']}
|
||||
]],
|
||||
});
|
||||
|
||||
ea.listen();
|
||||
},
|
||||
add: function () {
|
||||
$(function () {
|
||||
iconPickerFa.render({
|
||||
elem: '#icon',
|
||||
url: PATH_CONFIG.iconLess,
|
||||
limit: 12,
|
||||
click: function (data) {
|
||||
$('#icon').val('fa ' + data.icon);
|
||||
},
|
||||
success: function (d) {
|
||||
console.log(d);
|
||||
}
|
||||
});
|
||||
})
|
||||
autocomplete.render({
|
||||
elem: $('#href')[0],
|
||||
url: ea.url('system.menu/getMenuTips'),
|
||||
template_val: '{{d.node}}',
|
||||
template_txt: '{{d.node}} <span class="layui-badge">{{d.title}}</span>',
|
||||
onselect: function (resp) {
|
||||
}
|
||||
});
|
||||
|
||||
ea.listen();
|
||||
},
|
||||
edit: function () {
|
||||
$(function () {
|
||||
iconPickerFa.render({
|
||||
elem: '#icon',
|
||||
url: PATH_CONFIG.iconLess,
|
||||
limit: 12,
|
||||
click: function (data) {
|
||||
$('#icon').val('fa ' + data.icon);
|
||||
},
|
||||
success: function (d) {
|
||||
console.log(d);
|
||||
}
|
||||
});
|
||||
})
|
||||
autocomplete.render({
|
||||
elem: $('#href')[0],
|
||||
url: ea.url('system.menu/getMenuTips'),
|
||||
template_val: '{{d.node}}',
|
||||
template_txt: '{{d.node}} <span class="layui-badge">{{d.title}}</span>',
|
||||
onselect: function (resp) {
|
||||
}
|
||||
});
|
||||
|
||||
ea.listen();
|
||||
},
|
||||
};
|
||||
});
|
||||
45
public/static/admin/js/system/uploadfile.js
Normal file
@ -0,0 +1,45 @@
|
||||
define(["jquery", "easy-admin"], function ($, ea) {
|
||||
|
||||
var init = {
|
||||
table_elem: '#currentTable',
|
||||
table_render_id: 'currentTableRenderId',
|
||||
index_url: 'system.uploadfile/index',
|
||||
add_url: 'system.uploadfile/add',
|
||||
edit_url: 'system.uploadfile/edit',
|
||||
delete_url: 'system.uploadfile/delete',
|
||||
modify_url: 'system.uploadfile/modify',
|
||||
export_url: 'system.uploadfile/export',
|
||||
};
|
||||
|
||||
return {
|
||||
|
||||
index: function () {
|
||||
ea.table.render({
|
||||
init: init,
|
||||
cols: [[
|
||||
{type: "checkbox"},
|
||||
{field: 'id', width: 80, title: 'ID', searchOp: '='},
|
||||
{field: 'upload_type', minWidth: 80, title: '存储位置', search: 'select', selectList: upload_types},
|
||||
{field: 'url', minWidth: 80, search: false, title: '图片信息', templet: ea.table.image},
|
||||
{field: 'url', minWidth: 120, title: '保存地址', templet: ea.table.url},
|
||||
{field: 'original_name', minWidth: 80, title: '文件原名'},
|
||||
{field: 'mime_type', minWidth: 80, title: 'mime类型'},
|
||||
{field: 'file_ext', minWidth: 80, title: '文件后缀'},
|
||||
{field: 'create_time', minWidth: 80, title: '创建时间', search: 'range'},
|
||||
{width: 250, title: '操作', templet: ea.table.tool, operat: ['delete']}
|
||||
]],
|
||||
});
|
||||
|
||||
ea.listen();
|
||||
},
|
||||
add: function () {
|
||||
ea.listen();
|
||||
},
|
||||
edit: function () {
|
||||
ea.listen();
|
||||
},
|
||||
password: function () {
|
||||
ea.listen();
|
||||
}
|
||||
};
|
||||
});
|
||||
106
public/static/common/css/install.css
Normal file
@ -0,0 +1,106 @@
|
||||
body {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
h1 {
|
||||
margin-top: 20px;
|
||||
}
|
||||
|
||||
h1 img {
|
||||
width: 120px;
|
||||
height: 120px;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 28px;
|
||||
font-weight: normal;
|
||||
color: #3C5675;
|
||||
margin-bottom: 0
|
||||
}
|
||||
|
||||
.content {
|
||||
margin-top: 20px;
|
||||
}
|
||||
|
||||
.content p {
|
||||
margin: 20px;
|
||||
}
|
||||
|
||||
.content form {
|
||||
width: 500px;
|
||||
margin: 0 auto 20px;
|
||||
}
|
||||
|
||||
.content form .bg {
|
||||
margin-top: 20px;
|
||||
background-color: #fff;
|
||||
border: 1px solid #fff;
|
||||
border-radius: 3px;
|
||||
padding: 14px 14px;
|
||||
box-shadow: 0 0 8px #cccccc;
|
||||
}
|
||||
|
||||
.content form .bg .layui-card {
|
||||
background-color: #fafafa;
|
||||
color: #ff8080;
|
||||
font-size: 15px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.content form .layui-form-item:last-child {
|
||||
margin-bottom: 0 !important;
|
||||
}
|
||||
|
||||
.content form .layui-btn {
|
||||
margin-top: 20px;
|
||||
}
|
||||
|
||||
.content .layui-elem-field legend {
|
||||
font-size: 16px;
|
||||
color: #8a8a8a;
|
||||
}
|
||||
|
||||
.content .tips {
|
||||
float: left;
|
||||
margin-top: 5px;
|
||||
margin-bottom: 5px;
|
||||
font-size: 12px;
|
||||
color: #eca6a6
|
||||
}
|
||||
|
||||
.content .admin-tips {
|
||||
float: left;
|
||||
margin-top: 5px;
|
||||
margin-bottom: 5px;
|
||||
font-size: 12px;
|
||||
color: #eca6a6
|
||||
}
|
||||
|
||||
.content .desc {
|
||||
font-size: 16px;
|
||||
color: #4E5465;
|
||||
margin-bottom: 30px;
|
||||
}
|
||||
|
||||
.content .desc a {
|
||||
color: #07adeb;
|
||||
margin-right: 10px;
|
||||
}
|
||||
|
||||
.content .desc a:first-child {
|
||||
margin-left: 10px;
|
||||
}
|
||||
|
||||
.error {
|
||||
background: #D83E3E;
|
||||
color: #fff;
|
||||
padding: 15px 20px;
|
||||
border-radius: 5px;
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
@media screen and (max-width: 768px) {
|
||||
.content form {
|
||||
width: 95%;
|
||||
}
|
||||
}
|
||||
755
public/static/common/css/welcome.css
Normal file
@ -0,0 +1,755 @@
|
||||
/**
|
||||
content from file: common.css
|
||||
*/
|
||||
/****************** 系統配置 ******************/
|
||||
html, body, p {
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.container {
|
||||
width: 100%;
|
||||
padding-right: 15px;
|
||||
padding-left: 15px;
|
||||
margin-right: auto;
|
||||
margin-left: auto
|
||||
}
|
||||
|
||||
@media (min-width: 576px) {
|
||||
.container {
|
||||
max-width: 540px
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 768px) {
|
||||
.container {
|
||||
max-width: 720px
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 992px) {
|
||||
.container {
|
||||
max-width: 960px
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 1200px) {
|
||||
.container {
|
||||
max-width: 1140px
|
||||
}
|
||||
}
|
||||
|
||||
.float-left {
|
||||
float: left
|
||||
}
|
||||
|
||||
.float-right {
|
||||
float: right
|
||||
}
|
||||
|
||||
a {
|
||||
text-decoration: none;
|
||||
color: #333333;
|
||||
}
|
||||
|
||||
i {
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
button {
|
||||
border: none;
|
||||
background: white;
|
||||
outline: none;
|
||||
}
|
||||
|
||||
table {
|
||||
border-collapse: collapse;
|
||||
}
|
||||
|
||||
.s-flex {
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.space-between {
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
.justify-center {
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.align-center {
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.cursor-p {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.mt-15 {
|
||||
margin-top: 15px;
|
||||
}
|
||||
|
||||
.clearfix:after, .clearfix:before {
|
||||
content: " ";
|
||||
display: table
|
||||
}
|
||||
|
||||
.clearfix:after {
|
||||
clear: both
|
||||
}
|
||||
|
||||
/****************** 头部 ******************/
|
||||
header {
|
||||
padding: 10px 16.8%;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
.logo-box {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
font-size: 25px;
|
||||
font-weight: normal;
|
||||
color: rgba(51, 51, 51, 1);
|
||||
}
|
||||
|
||||
header .right {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.navbar {
|
||||
margin-right: 40px;
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.navbar-item {
|
||||
margin-left: 30px;
|
||||
font-size: 16px;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.navbar-item.active {
|
||||
color: #36C182;
|
||||
padding-bottom: 5px;
|
||||
border-bottom: 2px solid #36C182;
|
||||
}
|
||||
|
||||
header .logo {
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
margin-right: 10px;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
header iframe {
|
||||
width: 100px;
|
||||
height: 30px;
|
||||
border: none;
|
||||
padding: 10px 0 0;
|
||||
}
|
||||
|
||||
/****************** 捐赠 ******************/
|
||||
|
||||
.d-banner h1, .d-banner p {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.ewm-content img {
|
||||
width: 200px;
|
||||
}
|
||||
|
||||
.ewm-content .ewm-item {
|
||||
width: 210px;
|
||||
margin-left: 15px;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.sect-role {
|
||||
margin-right: 25px;
|
||||
}
|
||||
|
||||
.table {
|
||||
width: 100%;
|
||||
max-width: 100%;
|
||||
margin-bottom: 1rem;
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
.table th,
|
||||
.table td {
|
||||
padding: 0.75rem;
|
||||
vertical-align: top;
|
||||
border-top: 1px solid #dee2e6;
|
||||
}
|
||||
|
||||
.table thead th {
|
||||
vertical-align: bottom;
|
||||
border-bottom: 2px solid #dee2e6;
|
||||
}
|
||||
|
||||
.table tbody + tbody {
|
||||
border-top: 2px solid #dee2e6;
|
||||
}
|
||||
|
||||
.table .table {
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
.table-sm th,
|
||||
.table-sm td {
|
||||
padding: 0.3rem;
|
||||
}
|
||||
|
||||
.table-bordered {
|
||||
border: 1px solid #dee2e6;
|
||||
}
|
||||
|
||||
.table-bordered th,
|
||||
.table-bordered td {
|
||||
border: 1px solid #dee2e6;
|
||||
}
|
||||
|
||||
.table-bordered thead th,
|
||||
.table-bordered thead td {
|
||||
border-bottom-width: 2px;
|
||||
}
|
||||
|
||||
.table-striped tbody tr:nth-of-type(odd) {
|
||||
background-color: rgba(0, 0, 0, 0.05);
|
||||
}
|
||||
|
||||
.table-hover tbody tr:hover {
|
||||
background-color: rgba(0, 0, 0, 0.075);
|
||||
}
|
||||
|
||||
/****************** 底部 ******************/
|
||||
footer {
|
||||
background: #e4e4e4;
|
||||
padding: 15px 0;
|
||||
font-size: 14px;
|
||||
font-family: "Microsoft YaHei", sans-serif;
|
||||
font-weight: 400;
|
||||
color: rgb(60, 85, 93);
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
footer p {
|
||||
margin: 10px 0;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
footer a {
|
||||
color: rgb(60, 85, 93);
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.protocol {
|
||||
font-weight: bold;
|
||||
text-align: center;
|
||||
margin-bottom: 15px;
|
||||
}
|
||||
|
||||
.beian-number {
|
||||
}
|
||||
|
||||
/**
|
||||
content from file: home.css
|
||||
*/
|
||||
.home-main {
|
||||
margin-top: 90px;
|
||||
}
|
||||
|
||||
.title {
|
||||
text-align: center;
|
||||
padding-bottom: 140px;
|
||||
}
|
||||
|
||||
.title .logo {
|
||||
width: 116px;
|
||||
height: 151px;
|
||||
margin-bottom: 60px;
|
||||
}
|
||||
|
||||
.title .name {
|
||||
width: 300px;
|
||||
height: 300px;
|
||||
}
|
||||
|
||||
.title .desc {
|
||||
width: 729px;
|
||||
font-size: 22px;
|
||||
font-family: MicrosoftYaHei;
|
||||
font-weight: 400;
|
||||
color: rgba(51, 51, 51, 1);
|
||||
line-height: 36px;
|
||||
text-align: center;
|
||||
margin: 0 auto 58px;
|
||||
}
|
||||
|
||||
.title .operation {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.title .operation button, .title .operation a {
|
||||
width: 123px;
|
||||
height: 47px;
|
||||
border: 1px solid rgb(0, 177, 236);
|
||||
border-radius: 24px;
|
||||
font-size: 16px;
|
||||
font-family: MicrosoftYaHei-Bold;
|
||||
font-weight: bold;
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
margin-left: 10px;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.title .operation .start {
|
||||
background: rgb(0, 177, 236);
|
||||
color: rgba(255, 255, 255, 1);
|
||||
}
|
||||
|
||||
.title .operation .icon-play {
|
||||
width: 10px;
|
||||
height: 12px;
|
||||
margin-left: 12px;
|
||||
}
|
||||
|
||||
.title .operation .download {
|
||||
color: #00b1ec;
|
||||
}
|
||||
|
||||
.title .operation .icon-download-green {
|
||||
width: 20px;
|
||||
height: 17px;
|
||||
margin-left: 12px;
|
||||
}
|
||||
|
||||
.title .operation .button-grya {
|
||||
background: #F3F3F3;
|
||||
font-size: 20px;
|
||||
font-family: MicrosoftYaHei;
|
||||
font-weight: 400;
|
||||
color: rgba(138, 138, 138, 1);
|
||||
border: none;
|
||||
}
|
||||
|
||||
.title .operation .button-grya .icon-gitee {
|
||||
width: 26px;
|
||||
height: 25px;
|
||||
margin-right: 3px;
|
||||
}
|
||||
|
||||
.title .operation .button-grya .icon-github-big {
|
||||
width: 26px;
|
||||
height: 25px;
|
||||
margin-right: 3px;
|
||||
|
||||
}
|
||||
|
||||
.introduction {
|
||||
padding: 75px 0 110px;
|
||||
background: #f8f8f8;
|
||||
}
|
||||
|
||||
.top {
|
||||
margin: 0 auto;
|
||||
max-width: 810px;
|
||||
}
|
||||
|
||||
.part-title {
|
||||
text-align: center;
|
||||
font-size: 0;
|
||||
}
|
||||
|
||||
.part-title .text {
|
||||
font-size: 32px;
|
||||
font-family: MicrosoftYaHei-Bold;
|
||||
font-weight: bold;
|
||||
color: rgba(51, 51, 51, 1);
|
||||
}
|
||||
|
||||
.part-title .line {
|
||||
width: 50px;
|
||||
height: 2px;
|
||||
background: #36C182;
|
||||
display: inline-block;
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
.introduction .top .part-desc {
|
||||
width: 808px;
|
||||
font-size: 14px;
|
||||
font-family: MicrosoftYaHei;
|
||||
font-weight: 400;
|
||||
color: rgba(102, 102, 102, 1);
|
||||
line-height: 22px;
|
||||
text-align: center;
|
||||
margin-top: 22px;
|
||||
}
|
||||
|
||||
.introduction .bottom {
|
||||
max-width: 1100px;
|
||||
margin: 110px auto 0;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
|
||||
.introduction .bottom .item {
|
||||
width: 294px;
|
||||
margin-right: 108px;
|
||||
}
|
||||
|
||||
.introduction .bottom .item:nth-child(n+4) {
|
||||
margin-top: 90px;
|
||||
}
|
||||
|
||||
.introduction .bottom .item:nth-child(3n+3) {
|
||||
margin-right: 0;
|
||||
}
|
||||
|
||||
.introduction .bottom .item-title {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.introduction .bottom .item-title i {
|
||||
width: 36px;
|
||||
height: 44px;
|
||||
margin-right: 20px;
|
||||
}
|
||||
|
||||
.introduction .bottom .item-title span {
|
||||
font-size: 22px;
|
||||
font-family: MicrosoftYaHei, sans-serif, serif;
|
||||
font-weight: 400;
|
||||
color: rgb(0, 96, 128);
|
||||
line-height: 26px;
|
||||
}
|
||||
|
||||
.introduction .bottom .item-desc {
|
||||
font-size: 14px;
|
||||
font-family: MicrosoftYaHei, sans-serif, serif;
|
||||
font-weight: 400;
|
||||
color: rgba(127, 127, 127, 1);
|
||||
line-height: 26px;
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
.footer-nav-box {
|
||||
width: 28%;
|
||||
}
|
||||
|
||||
.footer-proto-box {
|
||||
width: 58%;
|
||||
}
|
||||
|
||||
@media (max-width: 768px) {
|
||||
.footer-nav-box {
|
||||
width: 95%;
|
||||
}
|
||||
|
||||
.footer-proto-box {
|
||||
width: 95%;
|
||||
}
|
||||
}
|
||||
|
||||
.site-footer ul, .site-footer li {
|
||||
list-style: none;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.site-footer a {
|
||||
color:rgb(60, 85, 93);
|
||||
line-height: 1.6em;
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
.case {
|
||||
max-width: 80%;
|
||||
margin: 0 auto;
|
||||
text-align: center;
|
||||
padding: 75px 0 110px;
|
||||
}
|
||||
|
||||
.case .top {
|
||||
margin-bottom: 15px;
|
||||
}
|
||||
|
||||
.case a {
|
||||
margin: 20px 15px 0;
|
||||
position: relative;
|
||||
vertical-align: middle;
|
||||
text-decoration: none;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.case a,
|
||||
.case img {
|
||||
vertical-align: middle;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.case img {
|
||||
transition: all 0.3s ease;
|
||||
max-width: 140px;
|
||||
max-height: 90px;
|
||||
}
|
||||
|
||||
.case img:hover {
|
||||
filter: none;
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
.case .case-links {
|
||||
margin: 20px 0;
|
||||
}
|
||||
|
||||
.case .become-case {
|
||||
font-size: 0.9em;
|
||||
font-weight: 700;
|
||||
width: auto;
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
.case a.button,
|
||||
.case input.button {
|
||||
margin-top: 100px;
|
||||
padding: 0.65em 1.8em;
|
||||
border-radius: 2em;
|
||||
display: inline-block;
|
||||
background-color: #4fc08d;
|
||||
transition: all 0.15s ease;
|
||||
box-sizing: border-box;
|
||||
border: 1px solid #4fc08d;
|
||||
}
|
||||
|
||||
.case a.button.white,
|
||||
.case input.button.white {
|
||||
background-color: #fff;
|
||||
color: #42b983;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
content from file: icon-img.css
|
||||
*/
|
||||
.img-case {
|
||||
/*background: url("../images/case.png");*/
|
||||
background-size: contain;
|
||||
}
|
||||
|
||||
.img-qrcode {
|
||||
/*background: url("../images/qrcode.png");*/
|
||||
background-size: contain;
|
||||
}
|
||||
|
||||
.img-name {
|
||||
background: url("../images/logo-3.png") no-repeat;
|
||||
background-size: contain;
|
||||
}
|
||||
|
||||
.img-logo-header {
|
||||
background: url("../images/logo-1.png");
|
||||
background-size: contain;
|
||||
}
|
||||
|
||||
.img-logo-big {
|
||||
/*background: url("../images/big-logo.png");*/
|
||||
background-size: contain;
|
||||
}
|
||||
|
||||
.img-computer {
|
||||
/*background: url("../images/computer.png") repeat;*/
|
||||
background-size: contain;
|
||||
}
|
||||
|
||||
.icon-github-big {
|
||||
background: url("../images/icon-github-big.png");
|
||||
background-size: contain;
|
||||
}
|
||||
|
||||
.icon-github-small {
|
||||
/*background: url("../images/icon-github-small.png");*/
|
||||
background-size: contain;
|
||||
}
|
||||
|
||||
.icon-address {
|
||||
/*background: url("../images/icon-address.png") no-repeat;*/
|
||||
background-size: contain;
|
||||
}
|
||||
|
||||
.icon-email {
|
||||
/*background: url("../images/icon-position.png") no-repeat;*/
|
||||
background-size: contain;
|
||||
}
|
||||
|
||||
.icon-download-green {
|
||||
background: url("../images/icon-download-green.png");
|
||||
background-size: contain;
|
||||
}
|
||||
|
||||
.icon-play {
|
||||
background: url("../images/icon-play.png");
|
||||
background-size: contain;
|
||||
}
|
||||
|
||||
.icon-gitee {
|
||||
background: url("../images/icon-gitee.png") no-repeat;
|
||||
background-size: contain;
|
||||
}
|
||||
|
||||
.icon-intro-six {
|
||||
/*background: url("../images/intro-six.png") no-repeat;*/
|
||||
background-size: contain;
|
||||
}
|
||||
|
||||
.icon-intro-five {
|
||||
/*background: url("../images/intro-five.png") no-repeat;*/
|
||||
background-size: contain;
|
||||
}
|
||||
|
||||
.icon-intro-four {
|
||||
/*background: url("../images/intro-four.png") no-repeat;*/
|
||||
background-size: contain;
|
||||
}
|
||||
|
||||
.icon-intro-three {
|
||||
/*background: url("../images/intro-three.png") no-repeat;*/
|
||||
background-size: contain;
|
||||
}
|
||||
|
||||
.icon-intro-two {
|
||||
/*background: url("../images/intro-two.png") no-repeat;*/
|
||||
background-size: contain;
|
||||
}
|
||||
|
||||
.icon-intro-seven {
|
||||
/*background: url("../images/intro-three.png") no-repeat;*/
|
||||
background-size: contain;
|
||||
}
|
||||
|
||||
/**
|
||||
content from file: team.css
|
||||
*/
|
||||
.banner {
|
||||
position: relative;
|
||||
width: 100%;
|
||||
height: 200px;
|
||||
background: gray;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.banner-desc {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.banner-desc p:first-child {
|
||||
font-size: 36px;
|
||||
font-family: SourceHanSansCN-Bold;
|
||||
font-weight: bold;
|
||||
color: rgba(255, 255, 255, 1);
|
||||
}
|
||||
|
||||
.banner-desc p:last-child {
|
||||
font-size: 24px;
|
||||
font-family: SourceHanSansCN-Normal;
|
||||
font-weight: 400;
|
||||
color: rgba(255, 255, 255, 1);
|
||||
margin-top: 15px;
|
||||
}
|
||||
|
||||
.team-main .content {
|
||||
margin-left: 26.5%;
|
||||
display: flex;
|
||||
padding: 50px 0 100px;
|
||||
}
|
||||
|
||||
.qrcode-box {
|
||||
width: 200px;
|
||||
height: 200px;
|
||||
padding: 20px;
|
||||
background: #fafafa;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
|
||||
}
|
||||
|
||||
.img-qrcode {
|
||||
width: 151px;
|
||||
height: 152px;
|
||||
}
|
||||
|
||||
.qrcode-box p {
|
||||
font-size: 14px;
|
||||
font-family: MicrosoftYaHei;
|
||||
font-weight: 400;
|
||||
color: rgba(51, 51, 51, 1);
|
||||
line-height: 20px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.info-box {
|
||||
margin-left: 50px;
|
||||
}
|
||||
|
||||
.info-item {
|
||||
display: flex;
|
||||
align-items: start;
|
||||
width: 480px;
|
||||
padding-bottom: 20px;
|
||||
border-bottom: 1px dotted #cfcfcf;
|
||||
}
|
||||
|
||||
.info-item + .info-item {
|
||||
padding-top: 20px;
|
||||
}
|
||||
|
||||
.info-item .avatar {
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
border-radius: 50%;
|
||||
}
|
||||
|
||||
.info-item .detail {
|
||||
margin-left: 10px;
|
||||
}
|
||||
|
||||
.info-item .detail p {
|
||||
font-size: 14px;
|
||||
font-family: MicrosoftYaHei;
|
||||
font-weight: 400;
|
||||
color: rgba(51, 51, 51, 1);
|
||||
|
||||
}
|
||||
|
||||
.info-item .detail p + p {
|
||||
margin-top: 8px;
|
||||
}
|
||||
|
||||
.info-item .detail p i {
|
||||
width: 14px;
|
||||
height: 13px;
|
||||
margin-right: 5px;
|
||||
}
|
||||
|
||||
.info-item .detail p.name {
|
||||
font-size: 20px;
|
||||
font-family: MicrosoftYaHei;
|
||||
font-weight: 400;
|
||||
color: rgba(51, 51, 51, 1);
|
||||
line-height: 36px;
|
||||
margin-bottom: 12px;
|
||||
}
|
||||
BIN
public/static/common/images/EasyAdmin8-ThinkPHP.png
Normal file
|
After Width: | Height: | Size: 11 KiB |
BIN
public/static/common/images/easyadmin8-01.png
Normal file
|
After Width: | Height: | Size: 130 KiB |
BIN
public/static/common/images/easyadmin8-02.png
Normal file
|
After Width: | Height: | Size: 100 KiB |
BIN
public/static/common/images/easyadmin8-03.png
Normal file
|
After Width: | Height: | Size: 94 KiB |
1
public/static/common/images/error.svg
Normal 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="1587611578518" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="12472" width="1000" height="1000" xmlns:xlink="http://www.w3.org/1999/xlink"><defs><style type="text/css"></style></defs><path d="M480 64C217.6 64 0 281.6 0 544s217.6 480 480 480 480-217.6 480-480S742.4 64 480 64z m204.8 614.4c19.2 19.2 19.2 44.8 0 64-19.2 19.2-44.8 19.2-64 0L486.4 608 345.6 748.8c-19.2 19.2-51.2 19.2-70.4 0-19.2-19.2-19.2-51.2 0-70.4L416 537.6 281.6 403.2c-19.2-19.2-19.2-44.8 0-64 19.2-19.2 44.8-19.2 64 0L480 473.6l140.8-140.8c19.2-19.2 51.2-19.2 70.4 0 19.2 19.2 19.2 51.2 0 70.4L550.4 544l134.4 134.4z" fill="#ff8992" p-id="12473"></path></svg>
|
||||
|
After Width: | Height: | Size: 818 B |
BIN
public/static/common/images/favicon.ico
Normal file
|
After Width: | Height: | Size: 4.2 KiB |
BIN
public/static/common/images/github.png
Normal file
|
After Width: | Height: | Size: 2.7 KiB |
BIN
public/static/common/images/icon-download-green.png
Normal file
|
After Width: | Height: | Size: 303 B |
BIN
public/static/common/images/icon-gitee.png
Normal file
|
After Width: | Height: | Size: 1.9 KiB |
BIN
public/static/common/images/icon-github-big.png
Normal file
|
After Width: | Height: | Size: 661 B |
BIN
public/static/common/images/icon-play.png
Normal file
|
After Width: | Height: | Size: 209 B |
1
public/static/common/images/info.svg
Normal 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="1587611661267" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="13699" xmlns:xlink="http://www.w3.org/1999/xlink" width="1000" height="1000"><defs><style type="text/css"></style></defs><path d="M512 4.12672c280.49408 0 507.87328 227.3792 507.87328 507.87328 0 280.49408-227.3792 507.87328-507.87328 507.87328C231.50592 1019.87328 4.12672 792.49408 4.12672 512 4.12672 231.50592 231.50592 4.12672 512 4.12672zM512 685.96736c-42.47552 0-76.91264 34.42688-76.91264 76.91264 0 42.47552 34.43712 76.91264 76.91264 76.91264 42.47552 0 76.91264-34.43712 76.91264-76.91264C588.91264 720.39424 554.47552 685.96736 512 685.96736zM509.78816 625.83808c36.58752 0 66.24256-29.66528 66.24256-66.24256l0-309.1456c0-36.58752-29.65504-66.24256-66.24256-66.24256-36.58752 0-66.24256 29.66528-66.24256 66.24256l0 309.1456C443.5456 596.18304 473.20064 625.83808 509.78816 625.83808z" p-id="13700" fill="#1E9FFF"></path></svg>
|
||||
|
After Width: | Height: | Size: 1.1 KiB |
BIN
public/static/common/images/loading.gif
Normal file
|
After Width: | Height: | Size: 6.8 KiB |
BIN
public/static/common/images/logo-1.png
Normal file
|
After Width: | Height: | Size: 14 KiB |
BIN
public/static/common/images/logo-2.png
Normal file
|
After Width: | Height: | Size: 21 KiB |
BIN
public/static/common/images/logo-3.png
Normal file
|
After Width: | Height: | Size: 23 KiB |
BIN
public/static/common/images/logo-8.png
Normal file
|
After Width: | Height: | Size: 39 KiB |
1
public/static/common/images/success.svg
Normal 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="1587611710727" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="15245" width="1000" height="1000" xmlns:xlink="http://www.w3.org/1999/xlink"><defs><style type="text/css"></style></defs><path d="M512 39.384615C250.092308 39.384615 39.384615 250.092308 39.384615 512s210.707692 472.615385 472.615385 472.615385 472.615385-210.707692 472.615385-472.615385S773.907692 39.384615 512 39.384615z m263.876923 354.461539L474.584615 699.076923c-11.815385 11.815385-31.507692 11.815385-43.323077 0L265.846154 531.692308c-11.815385-11.815385-11.815385-31.507692 0-43.323077l43.323077-43.323077c11.815385-11.815385 31.507692-11.815385 43.323077 0l86.646154 88.615384c7.876923 7.876923 21.661538 7.876923 29.538461 0L689.230769 305.230769c11.815385-11.815385 31.507692-11.815385 43.323077 0l43.323077 43.323077c13.784615 11.815385 13.784615 31.507692 0 45.292308z" p-id="15246" fill="#18bc9c"></path></svg>
|
||||
|
After Width: | Height: | Size: 1.1 KiB |
199
public/static/common/js/admin.js
Normal file
@ -0,0 +1,199 @@
|
||||
// +----------------------------------------------------------------------
|
||||
// | 后台公共JS
|
||||
// +----------------------------------------------------------------------
|
||||
|
||||
/**
|
||||
* @desc 快速时间范围选择
|
||||
* @returns {[{text: string, value: *[]}, {text: string, value: *[]}, {text: string, value: *[]}, {text: string, value: *[]}, {text: string, value: *[]}, null, null]}
|
||||
*/
|
||||
function getRangeShortcuts() {
|
||||
return [
|
||||
{
|
||||
text: "今天",
|
||||
value: function () {
|
||||
let value = [];
|
||||
let date1 = new Date();
|
||||
date1.setDate(date1.getDate());
|
||||
date1.setHours(0, 0, 0, 0);
|
||||
value.push(date1);
|
||||
let date2 = new Date();
|
||||
date2.setHours(23, 59, 59, 59);
|
||||
value.push(new Date(date2));
|
||||
return value;
|
||||
}()
|
||||
},
|
||||
{
|
||||
text: "昨天",
|
||||
value: function () {
|
||||
let value = [];
|
||||
let date1 = new Date();
|
||||
date1.setDate(date1.getDate() - 1);
|
||||
date1.setHours(0, 0, 0, 0);
|
||||
value.push(date1);
|
||||
let date2 = new Date();
|
||||
date2.setDate(date2.getDate() - 1);
|
||||
date2.setHours(23, 59, 59, 59);
|
||||
value.push(new Date(date2));
|
||||
return value;
|
||||
}()
|
||||
},
|
||||
{
|
||||
text: "前天",
|
||||
value: function () {
|
||||
let value = [];
|
||||
let date1 = new Date();
|
||||
date1.setDate(date1.getDate() - 2);
|
||||
date1.setHours(0, 0, 0, 0);
|
||||
value.push(date1);
|
||||
let date2 = new Date();
|
||||
date2.setDate(date2.getDate() - 1);
|
||||
date2.setDate(date2.getDate() - 1);
|
||||
date2.setHours(23, 59, 59, 59);
|
||||
value.push(new Date(date2));
|
||||
return value;
|
||||
}()
|
||||
},
|
||||
{
|
||||
text: "7天内",
|
||||
value: function () {
|
||||
let value = [];
|
||||
let date1 = new Date();
|
||||
// date1.setMonth(date1.getMonth() - 1);
|
||||
date1.setDate(date1.getDate() - 7);
|
||||
date1.setHours(0, 0, 0, 0);
|
||||
value.push(date1);
|
||||
let date2 = new Date();
|
||||
date2.setDate(date2.getDate());
|
||||
date2.setHours(23, 59, 59, 59);
|
||||
value.push(new Date(date2));
|
||||
return value;
|
||||
}()
|
||||
},
|
||||
{
|
||||
text: "这个月",
|
||||
value: function () {
|
||||
let value = [];
|
||||
let date1 = new Date();
|
||||
// date1.setMonth(date1.getMonth() - 1);
|
||||
date1.setDate(1);
|
||||
date1.setHours(0, 0, 0, 0);
|
||||
value.push(date1);
|
||||
let date2 = new Date();
|
||||
date2.setDate(date2.getDate());
|
||||
date2.setHours(23, 59, 59, 59);
|
||||
value.push(new Date(date2));
|
||||
return value;
|
||||
}()
|
||||
},
|
||||
{
|
||||
text: "上个月",
|
||||
value: function () {
|
||||
let value = [];
|
||||
let date1 = new Date();
|
||||
date1.setMonth(date1.getMonth() - 1);
|
||||
date1.setDate(1);
|
||||
date1.setHours(0, 0, 0, 0);
|
||||
value.push(date1);
|
||||
let date2 = new Date();
|
||||
date2.setDate(1);
|
||||
date2.setDate(date2.getDate() - 1);
|
||||
date2.setHours(23, 59, 59, 59);
|
||||
value.push(new Date(date2));
|
||||
return value;
|
||||
}()
|
||||
},
|
||||
{
|
||||
text: "今年",
|
||||
value: function () {
|
||||
let value = [];
|
||||
let date1 = new Date();
|
||||
date1.setMonth(0);
|
||||
date1.setDate(1);
|
||||
date1.setHours(0, 0, 0, 0);
|
||||
value.push(date1);
|
||||
let date2 = new Date();
|
||||
date2.setDate(date2.getDate());
|
||||
date2.setHours(23, 59, 59, 59);
|
||||
value.push(new Date(date2));
|
||||
return value;
|
||||
}()
|
||||
},
|
||||
];
|
||||
}
|
||||
|
||||
/**
|
||||
* @desc 格式化json
|
||||
* @param str
|
||||
* @returns {string}
|
||||
*/
|
||||
function prettyFormat(str) {
|
||||
let result = ''
|
||||
try {
|
||||
// 设置缩进为2个空格
|
||||
str = JSON.stringify(JSON.parse(str), null, 2);
|
||||
str = str
|
||||
.replace(/&/g, '&')
|
||||
.replace(/</g, '<')
|
||||
.replace(/>/g, '>');
|
||||
result += str.replace(/("(\\u[a-zA-Z0-9]{4}|\\[^u]|[^\\"])*"(\s*:)?|\b(true|false|null)\b|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?)/g, function (match) {
|
||||
let cls = 'number';
|
||||
if (/^"/.test(match)) {
|
||||
if (/:$/.test(match)) {
|
||||
cls = 'key';
|
||||
} else {
|
||||
cls = 'string';
|
||||
}
|
||||
} else if (/true|false/.test(match)) {
|
||||
cls = 'boolean';
|
||||
} else if (/null/.test(match)) {
|
||||
cls = 'null';
|
||||
}
|
||||
return '<span class="' + cls + '">' + match + '</span>';
|
||||
});
|
||||
} catch (e) {
|
||||
return ''
|
||||
}
|
||||
return "<pre>" + result + "</pre>"
|
||||
}
|
||||
|
||||
if (self === top) {
|
||||
console.group('温馨提示');
|
||||
console.log(`%c
|
||||
|
||||
▄▄ ▄▄
|
||||
▀███▀▀▀███ ██ ▀███ ██ ▄█▄▀▄██▄
|
||||
██ ▀█ ▄██▄ ██ ██ ██
|
||||
██ █ ▄█▀██▄ ▄██▀█████▀ ▀██▀ ▄█▀██▄ ▄█▀▀███ ▀████████▄█████▄ ▀███ ▀████████▄ ▀██▄ ▄▄█
|
||||
██████ ██ ██ ██ ▀▀ ██ ▄█ ▄█ ▀██ ▄██ ██ ██ ██ ██ ██ ██ ██ ▄█████▄
|
||||
██ █ ▄▄█████ ▀█████▄ ██ ▄█ ████████ ███ ██ ██ ██ ██ ██ ██ ██ ██ ▀███
|
||||
██ ▄██ ██ █▄ ██ ███ █▀ ██ ▀██ ██ ██ ██ ██ ██ ██ ██ ██ ▀██
|
||||
▄██████████████▀██▄██████▀ ▄█ ▄███▄ ▄████▄ ▀████▀███▄████ ████ ████▄████▄████ ████▄███████
|
||||
▄█
|
||||
██▀
|
||||
%c
|
||||
|
||||
官方网站:https://easyadmin8.top
|
||||
|
||||
官方文档:https://edocs.easyadmin8.top
|
||||
|
||||
问答社区:https://meta.easyadmin8.top
|
||||
|
||||
%c重要事情说3遍:
|
||||
%c
|
||||
常见问题:https://easyadmin8.top/guide/question.html
|
||||
|
||||
常见问题:https://easyadmin8.top/guide/question.html
|
||||
|
||||
常见问题:https://easyadmin8.top/guide/question.html
|
||||
|
||||
%c遇到问题先把 DEBUG 模式打开,然后把错误信息找出来,当不能解决的时候再去社区提问或者QQ群交流
|
||||
`,
|
||||
"color:#4290f7;font-weight:bold;font-size:10px;",
|
||||
"color:#5672cd;",
|
||||
"color:#ff5722;font-weight:bold;font-size:1rem;",
|
||||
"color:#5672cd;",
|
||||
"color:#ff5722;font-weight:bold;font-size:1rem;background:#f9de97;",
|
||||
);
|
||||
console.groupEnd();
|
||||
}
|
||||
|
||||
51
public/static/config-admin.js
Normal file
@ -0,0 +1,51 @@
|
||||
var BASE_URL = document.scripts[document.scripts.length - 1].src.substring(0, document.scripts[document.scripts.length - 1].src.lastIndexOf("/") + 1);
|
||||
window.BASE_URL = BASE_URL;
|
||||
require.config({
|
||||
urlArgs: "v=" + CONFIG.VERSION,
|
||||
baseUrl: BASE_URL,
|
||||
paths: {
|
||||
"jquery": ["plugs/jquery-3.4.1/jquery-3.4.1.min"],
|
||||
"echarts": ["plugs/echarts/echarts.min"],
|
||||
"echarts-theme": ["plugs/echarts/echarts-theme"],
|
||||
"easy-admin": ["plugs/easy-admin/easy-admin"],
|
||||
"layui": ["plugs/layui-v2.x/layui"],
|
||||
"miniAdmin": ["plugs/lay-module/layuimini/miniAdmin"],
|
||||
"miniMenu": ["plugs/lay-module/layuimini/miniMenu"],
|
||||
"miniTab": ["plugs/lay-module/layuimini/miniTab"],
|
||||
"miniTheme": ["plugs/lay-module/layuimini/miniTheme"],
|
||||
"miniTongji": ["plugs/lay-module/layuimini/miniTongji"],
|
||||
"treetable": ["plugs/lay-module/treetable-lay/treetable"],
|
||||
"tableSelect": ["plugs/lay-module/tableSelect/tableSelect"],
|
||||
"switchSelect": ["plugs/lay-module/switchSelect/switchSelect"],
|
||||
"iconPickerFa": ["plugs/lay-module/iconPicker/iconPickerFa"],
|
||||
"autocomplete": ["plugs/lay-module/autocomplete/autocomplete"],
|
||||
"xmSelect": ["plugs/xmSelect/xm-select"],
|
||||
"vue": ["plugs/vue-2.6.10/vue.min"],
|
||||
"swiper": ["plugs/swiper/swiper-bundle.min"],
|
||||
"colorMode": ["plugs/colorMode/colorMode"],
|
||||
"lazyload": ["plugs/lazyload/lazyload.min"],
|
||||
"clipboard": ["plugs/clipboard/clipboard.min"],
|
||||
}
|
||||
});
|
||||
|
||||
// 路径配置信息
|
||||
var PATH_CONFIG = {
|
||||
iconLess: BASE_URL + "plugs/font-awesome-6.x/less/_variables.less",
|
||||
};
|
||||
window.PATH_CONFIG = PATH_CONFIG;
|
||||
|
||||
// 初始化控制器对应的JS自动加载
|
||||
window.addEventListener('load', function () {
|
||||
if ("undefined" != typeof CONFIG.AUTOLOAD_JS && CONFIG.AUTOLOAD_JS) {
|
||||
require([BASE_URL + CONFIG.CONTROLLER_JS_PATH], function (Controller) {
|
||||
if (typeof Controller[CONFIG.ACTION] == "function") {
|
||||
Controller[CONFIG.ACTION]()
|
||||
} else {
|
||||
console.error(`\r\n控制器对应的JS ${CONFIG.CONTROLLER_JS_PATH} 监测异常\r\n当前Js文件中不存在监听 ${CONFIG.ACTION} 方法`)
|
||||
}
|
||||
}, function (e) {
|
||||
console.error(e);
|
||||
});
|
||||
}
|
||||
})
|
||||
|
||||
10
public/static/plugs/ckeditor4/adapters/jquery.js
vendored
Normal file
@ -0,0 +1,10 @@
|
||||
/*
|
||||
Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
|
||||
*/
|
||||
(function(a){if("undefined"==typeof a)throw Error("jQuery should be loaded before CKEditor jQuery adapter.");if("undefined"==typeof CKEDITOR)throw Error("CKEditor should be loaded before CKEditor jQuery adapter.");CKEDITOR.config.jqueryOverrideVal="undefined"==typeof CKEDITOR.config.jqueryOverrideVal?!0:CKEDITOR.config.jqueryOverrideVal;a.extend(a.fn,{ckeditorGet:function(){var a=this.eq(0).data("ckeditorInstance");if(!a)throw"CKEditor is not initialized yet, use ckeditor() with a callback.";return a},
|
||||
ckeditor:function(g,e){if(!CKEDITOR.env.isCompatible)throw Error("The environment is incompatible.");if(!a.isFunction(g)){var m=e;e=g;g=m}var k=[];e=e||{};this.each(function(){var b=a(this),c=b.data("ckeditorInstance"),f=b.data("_ckeditorInstanceLock"),h=this,l=new a.Deferred;k.push(l.promise());if(c&&!f)g&&g.apply(c,[this]),l.resolve();else if(f)c.once("instanceReady",function(){setTimeout(function d(){c.element?(c.element.$==h&&g&&g.apply(c,[h]),l.resolve()):setTimeout(d,100)},0)},null,null,9999);
|
||||
else{if(e.autoUpdateElement||"undefined"==typeof e.autoUpdateElement&&CKEDITOR.config.autoUpdateElement)e.autoUpdateElementJquery=!0;e.autoUpdateElement=!1;b.data("_ckeditorInstanceLock",!0);c=a(this).is("textarea")?CKEDITOR.replace(h,e):CKEDITOR.inline(h,e);b.data("ckeditorInstance",c);c.on("instanceReady",function(e){var d=e.editor;setTimeout(function n(){if(d.element){e.removeListener();d.on("dataReady",function(){b.trigger("dataReady.ckeditor",[d])});d.on("setData",function(a){b.trigger("setData.ckeditor",
|
||||
[d,a.data])});d.on("getData",function(a){b.trigger("getData.ckeditor",[d,a.data])},999);d.on("destroy",function(){b.trigger("destroy.ckeditor",[d])});d.on("save",function(){a(h.form).submit();return!1},null,null,20);if(d.config.autoUpdateElementJquery&&b.is("textarea")&&a(h.form).length){var c=function(){b.ckeditor(function(){d.updateElement()})};a(h.form).submit(c);a(h.form).bind("form-pre-serialize",c);b.bind("destroy.ckeditor",function(){a(h.form).unbind("submit",c);a(h.form).unbind("form-pre-serialize",
|
||||
c)})}d.on("destroy",function(){b.removeData("ckeditorInstance")});b.removeData("_ckeditorInstanceLock");b.trigger("instanceReady.ckeditor",[d]);g&&g.apply(d,[h]);l.resolve()}else setTimeout(n,100)},0)},null,null,9999)}});var f=new a.Deferred;this.promise=f.promise();a.when.apply(this,k).then(function(){f.resolve()});this.editor=this.eq(0).data("ckeditorInstance");return this}});CKEDITOR.config.jqueryOverrideVal&&(a.fn.val=CKEDITOR.tools.override(a.fn.val,function(g){return function(e){if(arguments.length){var m=
|
||||
this,k=[],f=this.each(function(){var b=a(this),c=b.data("ckeditorInstance");if(b.is("textarea")&&c){var f=new a.Deferred;c.setData(e,function(){f.resolve()});k.push(f.promise());return!0}return g.call(b,e)});if(k.length){var b=new a.Deferred;a.when.apply(this,k).done(function(){b.resolveWith(m)});return b.promise()}return f}var f=a(this).eq(0),c=f.data("ckeditorInstance");return f.is("textarea")&&c?c.getData():g.call(f)}}))})(window.jQuery);
|
||||
168
public/static/plugs/ckeditor4/build-config.js
Normal file
@ -0,0 +1,168 @@
|
||||
/**
|
||||
* @license Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.md or https://ckeditor.com/license
|
||||
*/
|
||||
|
||||
/**
|
||||
* This file was added automatically by CKEditor builder.
|
||||
* You may re-use it at any time to build CKEditor again.
|
||||
*
|
||||
* If you would like to build CKEditor online again
|
||||
* (for example to upgrade), visit one the following links:
|
||||
*
|
||||
* (1) https://ckeditor.com/cke4/builder
|
||||
* Visit online builder to build CKEditor from scratch.
|
||||
*
|
||||
* (2) https://ckeditor.com/cke4/builder/3b54fd1f22dcd13ebe2a3f52d6f8cc05
|
||||
* Visit online builder to build CKEditor, starting with the same setup as before.
|
||||
*
|
||||
* (3) https://ckeditor.com/cke4/builder/download/3b54fd1f22dcd13ebe2a3f52d6f8cc05
|
||||
* Straight download link to the latest version of CKEditor (Optimized) with the same setup as before.
|
||||
*
|
||||
* NOTE:
|
||||
* This file is not used by CKEditor, you may remove it.
|
||||
* Changing this file will not change your CKEditor configuration.
|
||||
*/
|
||||
|
||||
var CKBUILDER_CONFIG = {
|
||||
skin: 'moono-lisa',
|
||||
preset: 'standard',
|
||||
ignore: [
|
||||
'.DS_Store',
|
||||
'.bender',
|
||||
'.editorconfig',
|
||||
'.gitattributes',
|
||||
'.gitignore',
|
||||
'.idea',
|
||||
'.jscsrc',
|
||||
'.jshintignore',
|
||||
'.jshintrc',
|
||||
'.mailmap',
|
||||
'.npm',
|
||||
'.travis.yml',
|
||||
'bender-err.log',
|
||||
'bender-out.log',
|
||||
'bender.ci.js',
|
||||
'bender.js',
|
||||
'dev',
|
||||
'gruntfile.js',
|
||||
'less',
|
||||
'node_modules',
|
||||
'package.json',
|
||||
'tests'
|
||||
],
|
||||
plugins : {
|
||||
'a11yhelp' : 1,
|
||||
'about' : 1,
|
||||
'basicstyles' : 1,
|
||||
'blockquote' : 1,
|
||||
'clipboard' : 1,
|
||||
'contextmenu' : 1,
|
||||
'elementspath' : 1,
|
||||
'enterkey' : 1,
|
||||
'entities' : 1,
|
||||
'filebrowser' : 1,
|
||||
'floatingspace' : 1,
|
||||
'format' : 1,
|
||||
'horizontalrule' : 1,
|
||||
'htmlwriter' : 1,
|
||||
'image' : 1,
|
||||
'indentlist' : 1,
|
||||
'link' : 1,
|
||||
'list' : 1,
|
||||
'magicline' : 1,
|
||||
'maximize' : 1,
|
||||
'pastefromgdocs' : 1,
|
||||
'pastefromword' : 1,
|
||||
'pastetext' : 1,
|
||||
'pastetools' : 1,
|
||||
'removeformat' : 1,
|
||||
'resize' : 1,
|
||||
'scayt' : 1,
|
||||
'showborders' : 1,
|
||||
'sourcearea' : 1,
|
||||
'specialchar' : 1,
|
||||
'stylescombo' : 1,
|
||||
'tab' : 1,
|
||||
'table' : 1,
|
||||
'tableselection' : 1,
|
||||
'tabletools' : 1,
|
||||
'toolbar' : 1,
|
||||
'undo' : 1,
|
||||
'uploadimage' : 1,
|
||||
'wsc' : 1,
|
||||
'wysiwygarea' : 1
|
||||
},
|
||||
languages : {
|
||||
'af' : 1,
|
||||
'ar' : 1,
|
||||
'az' : 1,
|
||||
'bg' : 1,
|
||||
'bn' : 1,
|
||||
'bs' : 1,
|
||||
'ca' : 1,
|
||||
'cs' : 1,
|
||||
'cy' : 1,
|
||||
'da' : 1,
|
||||
'de' : 1,
|
||||
'de-ch' : 1,
|
||||
'el' : 1,
|
||||
'en' : 1,
|
||||
'en-au' : 1,
|
||||
'en-ca' : 1,
|
||||
'en-gb' : 1,
|
||||
'eo' : 1,
|
||||
'es' : 1,
|
||||
'es-mx' : 1,
|
||||
'et' : 1,
|
||||
'eu' : 1,
|
||||
'fa' : 1,
|
||||
'fi' : 1,
|
||||
'fo' : 1,
|
||||
'fr' : 1,
|
||||
'fr-ca' : 1,
|
||||
'gl' : 1,
|
||||
'gu' : 1,
|
||||
'he' : 1,
|
||||
'hi' : 1,
|
||||
'hr' : 1,
|
||||
'hu' : 1,
|
||||
'id' : 1,
|
||||
'is' : 1,
|
||||
'it' : 1,
|
||||
'ja' : 1,
|
||||
'ka' : 1,
|
||||
'km' : 1,
|
||||
'ko' : 1,
|
||||
'ku' : 1,
|
||||
'lt' : 1,
|
||||
'lv' : 1,
|
||||
'mk' : 1,
|
||||
'mn' : 1,
|
||||
'ms' : 1,
|
||||
'nb' : 1,
|
||||
'nl' : 1,
|
||||
'no' : 1,
|
||||
'oc' : 1,
|
||||
'pl' : 1,
|
||||
'pt' : 1,
|
||||
'pt-br' : 1,
|
||||
'ro' : 1,
|
||||
'ru' : 1,
|
||||
'si' : 1,
|
||||
'sk' : 1,
|
||||
'sl' : 1,
|
||||
'sq' : 1,
|
||||
'sr' : 1,
|
||||
'sr-latn' : 1,
|
||||
'sv' : 1,
|
||||
'th' : 1,
|
||||
'tr' : 1,
|
||||
'tt' : 1,
|
||||
'ug' : 1,
|
||||
'uk' : 1,
|
||||
'vi' : 1,
|
||||
'zh' : 1,
|
||||
'zh-cn' : 1
|
||||
}
|
||||
};
|
||||
1267
public/static/plugs/ckeditor4/ckeditor.js
vendored
Normal file
29
public/static/plugs/ckeditor4/config.js
Normal file
@ -0,0 +1,29 @@
|
||||
CKEDITOR.editorConfig = function (config) {
|
||||
config.language = 'zh-cn';
|
||||
config.image_previewText = ' ';
|
||||
config.height = 500;
|
||||
config.width = 'auto';
|
||||
config.toolbarGroups = [
|
||||
{name: 'document', groups: ['mode', 'document', 'doctools']},
|
||||
{name: 'styles', groups: ['Font', 'FontSize']},
|
||||
{name: 'colors'},
|
||||
{name: 'basicstyles', groups: ['basicstyles', 'cleanup']},
|
||||
{name: 'paragraph', groups: ['list', 'indent', 'blocks', 'align', 'bidi']},
|
||||
{name: 'insert'},
|
||||
{name: 'others'},
|
||||
{name: 'forms'},
|
||||
{name: 'links'},
|
||||
{name: 'clipboard', groups: ['clipboard', 'undo']},
|
||||
{ name: 'insert', groups: [ 'EasyImageUpload' ] },
|
||||
{name: 'tools'},
|
||||
];
|
||||
config.filebrowserImageUploadUrl = config.filebrowserImageUploadUrl || "/admin/ajax/uploadEditor";
|
||||
|
||||
config.removeButtons = 'Underline,Subscript,Superscript';
|
||||
|
||||
config.format_tags = 'p;h1;h2;h3;pre';
|
||||
|
||||
config.removeDialogTabs = 'image:advanced;link:advanced';
|
||||
|
||||
config.font_names = '微软雅黑/Microsoft YaHei;宋体/SimSun;新宋体/NSimSun;仿宋/FangSong;楷体/KaiTi;黑体/SimHei;' + config.font_names;
|
||||
};
|
||||
208
public/static/plugs/ckeditor4/contents.css
Normal file
@ -0,0 +1,208 @@
|
||||
/*
|
||||
Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
|
||||
*/
|
||||
|
||||
body
|
||||
{
|
||||
/* Font */
|
||||
/* Emoji fonts are added to visualise them nicely in Internet Explorer. */
|
||||
font-family: sans-serif, Arial, Verdana, "Trebuchet MS", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
|
||||
font-size: 12px;
|
||||
|
||||
/* Text color */
|
||||
color: #333;
|
||||
|
||||
/* Remove the background color to make it transparent. */
|
||||
background-color: #fff;
|
||||
|
||||
margin: 20px;
|
||||
}
|
||||
|
||||
.cke_editable
|
||||
{
|
||||
font-size: 13px;
|
||||
line-height: 1.6;
|
||||
|
||||
/* Fix for missing scrollbars with RTL texts. (#10488) */
|
||||
word-wrap: break-word;
|
||||
}
|
||||
|
||||
blockquote
|
||||
{
|
||||
font-style: italic;
|
||||
font-family: Georgia, Times, "Times New Roman", serif;
|
||||
padding: 2px 0;
|
||||
border-style: solid;
|
||||
border-color: #ccc;
|
||||
border-width: 0;
|
||||
}
|
||||
|
||||
.cke_contents_ltr blockquote
|
||||
{
|
||||
padding-left: 20px;
|
||||
padding-right: 8px;
|
||||
border-left-width: 5px;
|
||||
}
|
||||
|
||||
.cke_contents_rtl blockquote
|
||||
{
|
||||
padding-left: 8px;
|
||||
padding-right: 20px;
|
||||
border-right-width: 5px;
|
||||
}
|
||||
|
||||
a
|
||||
{
|
||||
color: #0782C1;
|
||||
}
|
||||
|
||||
ol,ul,dl
|
||||
{
|
||||
/* IE7: reset rtl list margin. (#7334) */
|
||||
*margin-right: 0px;
|
||||
/* Preserved spaces for list items with text direction different than the list. (#6249,#8049)*/
|
||||
padding: 0 40px;
|
||||
}
|
||||
|
||||
h1,h2,h3,h4,h5,h6
|
||||
{
|
||||
font-weight: normal;
|
||||
line-height: 1.2;
|
||||
}
|
||||
|
||||
hr
|
||||
{
|
||||
border: 0px;
|
||||
border-top: 1px solid #ccc;
|
||||
}
|
||||
|
||||
img.right
|
||||
{
|
||||
border: 1px solid #ccc;
|
||||
float: right;
|
||||
margin-left: 15px;
|
||||
padding: 5px;
|
||||
}
|
||||
|
||||
img.left
|
||||
{
|
||||
border: 1px solid #ccc;
|
||||
float: left;
|
||||
margin-right: 15px;
|
||||
padding: 5px;
|
||||
}
|
||||
|
||||
pre
|
||||
{
|
||||
white-space: pre-wrap; /* CSS 2.1 */
|
||||
word-wrap: break-word; /* IE7 */
|
||||
-moz-tab-size: 4;
|
||||
tab-size: 4;
|
||||
}
|
||||
|
||||
.marker
|
||||
{
|
||||
background-color: Yellow;
|
||||
}
|
||||
|
||||
span[lang]
|
||||
{
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
figure
|
||||
{
|
||||
text-align: center;
|
||||
outline: solid 1px #ccc;
|
||||
background: rgba(0,0,0,0.05);
|
||||
padding: 10px;
|
||||
margin: 10px 20px;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
figure > figcaption
|
||||
{
|
||||
text-align: center;
|
||||
display: block; /* For IE8 */
|
||||
}
|
||||
|
||||
a > img {
|
||||
padding: 1px;
|
||||
margin: 1px;
|
||||
border: none;
|
||||
outline: 1px solid #0782C1;
|
||||
}
|
||||
|
||||
/* Widget Styles */
|
||||
.code-featured
|
||||
{
|
||||
border: 5px solid red;
|
||||
}
|
||||
|
||||
.math-featured
|
||||
{
|
||||
padding: 20px;
|
||||
box-shadow: 0 0 2px rgba(200, 0, 0, 1);
|
||||
background-color: rgba(255, 0, 0, 0.05);
|
||||
margin: 10px;
|
||||
}
|
||||
|
||||
.image-clean
|
||||
{
|
||||
border: 0;
|
||||
background: none;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.image-clean > figcaption
|
||||
{
|
||||
font-size: .9em;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.image-grayscale
|
||||
{
|
||||
background-color: white;
|
||||
color: #666;
|
||||
}
|
||||
|
||||
.image-grayscale img, img.image-grayscale
|
||||
{
|
||||
filter: grayscale(100%);
|
||||
}
|
||||
|
||||
.embed-240p
|
||||
{
|
||||
max-width: 426px;
|
||||
max-height: 240px;
|
||||
margin:0 auto;
|
||||
}
|
||||
|
||||
.embed-360p
|
||||
{
|
||||
max-width: 640px;
|
||||
max-height: 360px;
|
||||
margin:0 auto;
|
||||
}
|
||||
|
||||
.embed-480p
|
||||
{
|
||||
max-width: 854px;
|
||||
max-height: 480px;
|
||||
margin:0 auto;
|
||||
}
|
||||
|
||||
.embed-720p
|
||||
{
|
||||
max-width: 1280px;
|
||||
max-height: 720px;
|
||||
margin:0 auto;
|
||||
}
|
||||
|
||||
.embed-1080p
|
||||
{
|
||||
max-width: 1920px;
|
||||
max-height: 1080px;
|
||||
margin:0 auto;
|
||||
}
|
||||