From 2b8f874450fc9568dc47adcd298b92bc2568c0c4 Mon Sep 17 00:00:00 2001 From: Ying Date: Mon, 19 Jun 2023 14:32:30 +0800 Subject: [PATCH] =?UTF-8?q?pref:=20=E5=A2=9E=E5=8A=A0=E6=9C=8D=E5=8A=A1?= =?UTF-8?q?=E7=B1=BB=E4=BC=98=E5=8C=96UI=E7=89=88=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/AdminController.php | 35 +- app/ApiController.php | 51 +- app/BaseController.php | 65 +- app/HomeController.php | 26 +- app/admin/controller/Index.php | 56 +- app/admin/controller/system/Admin.php | 104 +- app/admin/controller/system/AdminRules.php | 26 +- app/admin/controller/system/Department.php | 6 +- app/admin/controller/system/Plugin.php | 28 +- app/admin/controller/system/User.php | 1 - app/admin/middleware/system/AdminLogin.php | 2 - .../middleware/system/AdminPermissions.php | 8 +- app/admin/view/index/analysis.html | 14 +- app/admin/view/index/basecfg.html | 137 +-- app/admin/view/index/console.html | 28 +- app/admin/view/system/admin/message.html | 2 +- app/admin/view/system/admin/rules.html | 41 +- app/admin/view/system/department/index.html | 36 +- app/admin/view/system/plugin/index.html | 1 + app/api/controller/Ajax.php | 109 +- app/api/controller/User.php | 299 ++++- app/api/middleware/system/ApiPermissions.php | 34 +- app/common/exception/ExceptionHandle.php | 67 +- app/common/library/Auth.php | 336 ----- app/common/library/Email.php | 358 ------ app/common/library/Ftp.php | 154 --- app/common/library/Sms.php | 192 --- app/common/logic/{ => admin}/AdminLogic.php | 6 +- app/common/model/system/User.php | 25 +- app/common/taglib/SaLibs.php | 2 + app/common/validate/system/Dictionary.php | 11 + app/common/validate/system/User.php | 51 +- app/functions.php | 217 ++-- app/index/controller/Ajax.php | 91 +- app/index/controller/Index.php | 15 +- app/index/controller/Third.php | 75 +- app/index/controller/User.php | 866 ++++++------- .../middleware/system/IndexPermissions.php | 28 +- app/index/view/index/index.html | 2 +- app/index/view/public/header.html | 1 - app/index/view/public/nav.html | 28 +- app/index/view/user/ajax_login.html | 58 + app/index/view/user/center.html | 6 +- app/index/view/user/changepwd.html | 79 -- app/index/view/user/email.html | 32 - app/index/view/user/forgot.html | 105 +- app/index/view/user/header.html | 40 - app/index/view/user/include.html | 2 +- app/index/view/user/login.html | 62 - app/index/view/user/login_log.html | 2 +- app/index/view/user/message.html | 8 +- .../{viewMessage.html => message_view.html} | 0 app/index/view/user/mobile.html | 30 - app/index/view/user/notice.html | 35 - app/index/view/user/register.html | 166 ++- app/index/view/user/security.html | 6 +- app/index/view/user/userNav.html | 2 +- app/install/controller/Index.php | 5 +- app/install/install.sql | 48 +- app/install/view/index/step1.html | 4 +- app/queue/redis/{Works.php => Worker.php} | 2 +- composer.json | 5 +- composer.lock | 932 ++++++++++++-- config/app.php | 2 +- config/bootstrap.php | 4 +- config/defineRoute.php | 3 - config/plugin/webman/gateway-worker/app.php | 2 +- config/plugin/webman/redis-queue/app.php | 2 +- config/redis.php | 8 +- config/route.php | 38 +- config/taglib.php | 3 - config/thinkcache.php | 24 - config/thinkorm.php | 4 +- config/view.php | 2 +- public/static/css/center.css | 5 + public/static/css/style.css | 2 +- public/static/js/{common.js => center.js} | 0 public/static/system/css/style.css | 32 +- public/static/system/js/common.js | 1 - public/static/system/layui/css/layui.css | 2 +- .../static/system/layui/css/modules/code.css | 1 - .../css/modules/laydate/default/font.css | 16 - .../css/modules/laydate/default/laydate.css | 1 - .../css/modules/layer/default/icon-ext.png | Bin 5911 -> 0 bytes .../layui/css/modules/layer/default/icon.png | Bin 11493 -> 0 bytes .../layui/css/modules/layer/default/layer.css | 1 - .../css/modules/layer/default/loading-0.gif | Bin 7061 -> 0 bytes .../css/modules/layer/default/loading-1.gif | Bin 7061 -> 0 bytes .../css/modules/layer/default/loading-2.gif | Bin 7061 -> 0 bytes .../system/layui/css/modules/notice.css | 1 - .../static/system/layui/css/modules/tags.css | 1 - public/static/system/layui/font/iconfont.eot | Bin 46684 -> 54172 bytes public/static/system/layui/font/iconfont.svg | 955 ++++++-------- public/static/system/layui/font/iconfont.ttf | Bin 46508 -> 53996 bytes public/static/system/layui/font/iconfont.woff | Bin 30628 -> 34624 bytes .../static/system/layui/font/iconfont.woff2 | Bin 25964 -> 29736 bytes public/static/system/layui/layui.js | 2 +- .../system/module/fileManager/fileManager.js | 5 +- public/static/system/module/plugin.js | 28 +- .../system/module/treetable/treetable.css | 22 - .../system/module/treetable/treetable.js | 223 ---- support/Request.php | 10 + support/Template.php | 31 +- support/helpers.php | 27 +- vendor/composer/autoload_classmap.php | 3 +- vendor/composer/autoload_files.php | 10 +- vendor/composer/autoload_psr4.php | 13 +- vendor/composer/autoload_static.php | 87 +- vendor/composer/installed.json | 975 +++++++++++++-- vendor/composer/installed.php | 151 ++- vendor/opis/closure/CHANGELOG.md | 260 ---- vendor/opis/closure/LICENSE | 20 - vendor/opis/closure/NOTICE | 9 - vendor/opis/closure/README.md | 92 -- vendor/opis/closure/autoload.php | 39 - vendor/opis/closure/composer.json | 44 - vendor/opis/closure/functions.php | 41 - vendor/opis/closure/src/Analyzer.php | 62 - vendor/opis/closure/src/ClosureContext.php | 34 - vendor/opis/closure/src/ClosureScope.php | 25 - vendor/opis/closure/src/ClosureStream.php | 99 -- vendor/opis/closure/src/ISecurityProvider.php | 25 - vendor/opis/closure/src/ReflectionClosure.php | 1093 ----------------- vendor/opis/closure/src/SecurityException.php | 18 - vendor/opis/closure/src/SecurityProvider.php | 42 - vendor/opis/closure/src/SelfReference.php | 31 - .../opis/closure/src/SerializableClosure.php | 678 ---------- .../translation/Loader/ArrayLoader.php | 6 +- vendor/topthink/think-cache/LICENSE | 201 --- vendor/topthink/think-cache/README.md | 87 -- vendor/topthink/think-cache/composer.json | 24 - .../topthink/think-cache/src/CacheManager.php | 273 ---- .../think-cache/src/cache/CacheItem.php | 210 ---- .../topthink/think-cache/src/cache/Driver.php | 349 ------ .../topthink/think-cache/src/cache/TagSet.php | 130 -- .../think-cache/src/cache/driver/File.php | 286 ----- .../think-cache/src/cache/driver/Memcache.php | 208 ---- .../src/cache/driver/Memcached.php | 220 ---- .../think-cache/src/cache/driver/Redis.php | 244 ---- .../think-cache/src/cache/driver/Wincache.php | 174 --- .../exception/InvalidArgumentException.php | 22 - .../topthink/think-cache/src/facade/Cache.php | 31 - vendor/webman/think-cache/LICENSE | 21 - vendor/webman/think-cache/README.md | 2 - vendor/webman/think-cache/composer.json | 13 - vendor/webman/think-cache/src/Install.php | 93 -- vendor/webman/think-cache/src/ThinkCache.php | 31 - .../think-cache/src/config/thinkcache.php | 22 - 148 files changed, 3933 insertions(+), 9286 deletions(-) delete mode 100644 app/common/library/Auth.php delete mode 100644 app/common/library/Email.php delete mode 100644 app/common/library/Ftp.php delete mode 100644 app/common/library/Sms.php rename app/common/logic/{ => admin}/AdminLogic.php (55%) create mode 100644 app/index/view/user/ajax_login.html delete mode 100644 app/index/view/user/changepwd.html delete mode 100644 app/index/view/user/email.html delete mode 100644 app/index/view/user/header.html delete mode 100644 app/index/view/user/login.html rename app/index/view/user/{viewMessage.html => message_view.html} (100%) delete mode 100644 app/index/view/user/mobile.html delete mode 100644 app/index/view/user/notice.html rename app/queue/redis/{Works.php => Worker.php} (95%) delete mode 100644 config/defineRoute.php delete mode 100644 config/taglib.php delete mode 100644 config/thinkcache.php rename public/static/js/{common.js => center.js} (100%) delete mode 100644 public/static/system/layui/css/modules/code.css delete mode 100644 public/static/system/layui/css/modules/laydate/default/font.css delete mode 100644 public/static/system/layui/css/modules/laydate/default/laydate.css delete mode 100644 public/static/system/layui/css/modules/layer/default/icon-ext.png delete mode 100644 public/static/system/layui/css/modules/layer/default/icon.png delete mode 100644 public/static/system/layui/css/modules/layer/default/layer.css delete mode 100644 public/static/system/layui/css/modules/layer/default/loading-0.gif delete mode 100644 public/static/system/layui/css/modules/layer/default/loading-1.gif delete mode 100644 public/static/system/layui/css/modules/layer/default/loading-2.gif delete mode 100644 public/static/system/layui/css/modules/notice.css delete mode 100644 public/static/system/layui/css/modules/tags.css delete mode 100644 public/static/system/module/treetable/treetable.css delete mode 100644 public/static/system/module/treetable/treetable.js delete mode 100644 vendor/opis/closure/CHANGELOG.md delete mode 100644 vendor/opis/closure/LICENSE delete mode 100644 vendor/opis/closure/NOTICE delete mode 100644 vendor/opis/closure/README.md delete mode 100644 vendor/opis/closure/autoload.php delete mode 100644 vendor/opis/closure/composer.json delete mode 100644 vendor/opis/closure/functions.php delete mode 100644 vendor/opis/closure/src/Analyzer.php delete mode 100644 vendor/opis/closure/src/ClosureContext.php delete mode 100644 vendor/opis/closure/src/ClosureScope.php delete mode 100644 vendor/opis/closure/src/ClosureStream.php delete mode 100644 vendor/opis/closure/src/ISecurityProvider.php delete mode 100644 vendor/opis/closure/src/ReflectionClosure.php delete mode 100644 vendor/opis/closure/src/SecurityException.php delete mode 100644 vendor/opis/closure/src/SecurityProvider.php delete mode 100644 vendor/opis/closure/src/SelfReference.php delete mode 100644 vendor/opis/closure/src/SerializableClosure.php delete mode 100644 vendor/topthink/think-cache/LICENSE delete mode 100644 vendor/topthink/think-cache/README.md delete mode 100644 vendor/topthink/think-cache/composer.json delete mode 100644 vendor/topthink/think-cache/src/CacheManager.php delete mode 100644 vendor/topthink/think-cache/src/cache/CacheItem.php delete mode 100644 vendor/topthink/think-cache/src/cache/Driver.php delete mode 100644 vendor/topthink/think-cache/src/cache/TagSet.php delete mode 100644 vendor/topthink/think-cache/src/cache/driver/File.php delete mode 100644 vendor/topthink/think-cache/src/cache/driver/Memcache.php delete mode 100644 vendor/topthink/think-cache/src/cache/driver/Memcached.php delete mode 100644 vendor/topthink/think-cache/src/cache/driver/Redis.php delete mode 100644 vendor/topthink/think-cache/src/cache/driver/Wincache.php delete mode 100644 vendor/topthink/think-cache/src/exception/InvalidArgumentException.php delete mode 100644 vendor/topthink/think-cache/src/facade/Cache.php delete mode 100644 vendor/webman/think-cache/LICENSE delete mode 100644 vendor/webman/think-cache/README.md delete mode 100644 vendor/webman/think-cache/composer.json delete mode 100644 vendor/webman/think-cache/src/Install.php delete mode 100644 vendor/webman/think-cache/src/ThinkCache.php delete mode 100644 vendor/webman/think-cache/src/config/thinkcache.php diff --git a/app/AdminController.php b/app/AdminController.php index 778d1c1..64b9beb 100644 --- a/app/AdminController.php +++ b/app/AdminController.php @@ -67,6 +67,12 @@ class AdminController extends BaseController */ protected bool $dataLimit = false; + /** + * 是否开启部门限制 + * @var bool + */ + protected bool $departmentLimit = false; + /** * 数据限制字段 * @var string @@ -108,7 +114,7 @@ class AdminController extends BaseController /** * 获取资源列表 - * @return Response|void + * @return Response */ public function index() { @@ -117,7 +123,6 @@ class AdminController extends BaseController $limit = (int)input('limit', 18); $where = $this->buildSelectParams(); $count = $this->model->where($where)->count(); - $limit = is_empty($limit) ? 10 : $limit; $page = $count <= $limit ? 1 : $page; $fieldList = $this->model->getFields(); $order = !array_key_exists('sort', $fieldList) ? 'id' : 'sort'; @@ -219,6 +224,7 @@ class AdminController extends BaseController /** * 删除资源 + * @return Response */ public function del() { @@ -362,14 +368,14 @@ class AdminController extends BaseController /** * 获取查询参数 + * @return array */ - protected function buildSelectParams() + protected function buildSelectParams(): array { + $where = []; $params = request()->all(); - if (!empty($params) && is_array($params)) { - $where = []; $this->tableFields = $this->model->getFields(); foreach ($params as $field => $value) { @@ -413,23 +419,18 @@ class AdminController extends BaseController case 'year': $value = str_replace(',', '-', $value); if (strpos($value, '-')) { - $arr = explode(' - ', $value); if (empty($arr)) { continue 2; } - if (in_array($field, $this->converTime)) { - if (isset($arr[0])) { $arr[0] = strtotime($arr[0]); } - if (isset($arr[1])) { $arr[1] = strtotime($arr[1]); } } - $exp = 'between'; if ($arr[0] === '') { $exp = '<='; @@ -438,7 +439,6 @@ class AdminController extends BaseController $exp = '>='; $arr = $arr[0]; } - $where[] = [$field, $exp, $arr]; } else { $where[] = [$field, '=', $value]; @@ -484,17 +484,20 @@ class AdminController extends BaseController } } - // 限制数据字段 - if (!$this->auth->SuperAdmin() && $this->dataLimit) { + // 限制个人数据权限 + $superAdmin = $this->auth->SuperAdmin(); + if (!$superAdmin && $this->dataLimit) { if (in_array($this->dataLimitField, $this->tableFields)) { $where[] = [$this->dataLimitField, '=', get_admin_id()]; } + } // 限制部门数据权限 + else if (!$superAdmin && $this->departmentLimit + && in_array('department_id', $this->tableFields)) { + $where[] = ['department_id', 'in', get_admin_info('AdminLogin.department_id')]; } - - return $where; } - return false; + return $where; } /** diff --git a/app/ApiController.php b/app/ApiController.php index 78d6e7a..0e01e04 100644 --- a/app/ApiController.php +++ b/app/ApiController.php @@ -11,7 +11,8 @@ declare (strict_types=1); // +---------------------------------------------------------------------- namespace app; -use app\common\library\Auth; +use app\common\service\user\UserService; +use support\Response; /** * Api全局控制器基类 @@ -27,6 +28,52 @@ class ApiController extends BaseController public function __construct() { parent::__construct(); - $this->auth = Auth::instance(); + } + + /** + * 操作成功跳转 + * @access protected + * @param mixed $msg + * @param mixed $url + * @param mixed $data + * @param int $count + * @param int $code + * @param int $wait + * @param array $header + * @return Response + */ + protected function success(mixed $msg = '', mixed $url = '', mixed $data = '', int $count = 0, int $code = 200, int $wait = 3, array $header = []): Response + { + $msg = !empty($msg) ? __($msg) : __('操作成功!'); + $result = ['code' => $code, 'msg' => $msg, 'data' => $data, 'count' => $count, 'url' => (string)$url, 'wait' => $wait]; + return json($result); + } + + /** + * 操作错误跳转的快捷方法 + * @access protected + * @param mixed $msg 提示信息 + * @param mixed $url 跳转的URL地址 + * @param mixed $data 返回的数据 + * @param int $code + * @param integer $wait 跳转等待时间 + * @param array $header 发送的Header信息 + * @return Response + */ + protected function error(mixed $msg = '', mixed $url = '', mixed $data = '', int $code = 101, int $wait = 3, array $header = []): Response + { + $msg = !empty($msg) ? __($msg) : __('操作失败!'); + $result = ['code' => $code, 'msg' => $msg, 'data' => $data, 'url' => (string)$url, 'wait' => $wait]; + return json($result); + } + + /** + * 退出登录 + * @access public + */ + public function logOut(): Response + { + UserService::logout(); + return $this->success('退出成功', '/'); } } diff --git a/app/BaseController.php b/app/BaseController.php index 65940a8..dd03c6d 100644 --- a/app/BaseController.php +++ b/app/BaseController.php @@ -10,6 +10,7 @@ declare (strict_types=1); // | Author: meystack Apache 2.0 License // +---------------------------------------------------------------------- namespace app; + use support\Log; use support\Response; use think\db\exception\BindParamException; @@ -44,12 +45,6 @@ class BaseController */ public string $scene = ''; - /** - * 是否批量验证 - * @var bool - */ - protected bool $batchValidate = false; - /** * 获取访问来源 * @var string @@ -58,59 +53,7 @@ class BaseController public function __construct() { - $this->referer = \request()->header('referer'); - } - - /** - * 验证数据 - * @access protected - * @param array $data 数据 - * @param $validate - * @param array $message 提示信息 - * @param bool $batch 是否批量验证 - * @return bool - */ - protected function validate(array $data, $validate, array $message = [], bool $batch = false): bool - { - if (is_array($validate)) { - $v = new Validate(); - $v->rule($validate); - } else { - if (strpos($validate, '.')) { - // 支持场景 - [$validate, $scene] = explode('.', $validate); - } - $class = str_contains($validate, '\\') ? $validate : $this->parseClass('validate', $validate); - $v = new $class(); - if (!empty($scene)) { - $v->scene($scene); - } - } - - $v->message($message); - - // 是否批量验证 - if ($batch || $this->batchValidate) { - $v->batch(); - } - - return $v->failException()->check($data); - } - - /** - * 解析应用类的类名 - * @access public - * @param string $layer 层名 controller model ... - * @param string $name 类名 - * @return string - */ - protected function parseClass(string $layer, string $name): string - { - $name = str_replace(['/', '.'], '\\', $name); - $array = explode('\\', $name); - $class = Str::studly(array_pop($array)); - $path = $array ? implode('\\', $array) . '\\' : ''; - return 'app' . '\\' . $layer . '\\' . $path . $class; + $this->referer = \request()->header('referer', '/'); } /** @@ -204,8 +147,8 @@ class BaseController */ protected function getResponseType(): string { - $mask=request()->input('_ajax')==1 ||request()->input('_pjax')==1; - return request()->isAjax() || request()->acceptJson() || $mask ? 'json' : 'html'; + $_ajax = request()->input('_ajax', input('_pjax')); + return request()->isAjax() || request()->acceptJson() || $_ajax ? 'json' : 'html'; } /** diff --git a/app/HomeController.php b/app/HomeController.php index 42e5cbe..094968a 100644 --- a/app/HomeController.php +++ b/app/HomeController.php @@ -12,7 +12,7 @@ declare(strict_types=1); // +---------------------------------------------------------------------- namespace app; -use app\common\library\Auth; +use app\common\service\user\UserService; use Psr\SimpleCache\InvalidArgumentException; use support\Response; use think\db\exception\DataNotFoundException; @@ -45,12 +45,6 @@ class HomeController extends BaseController */ public string $errorText = ''; - /** - * 接口权限 - * @var object - */ - public object $auth; - /** * 控制器登录鉴权 * @var bool @@ -67,13 +61,13 @@ class HomeController extends BaseController * 非鉴权方法 * @var array */ - public array $noNeedAuth = []; + public array $noNeedLogin = []; /** * 跳转URL地址 * @var string */ - public string $JumpUrl = '/user/index'; + public string $JumpUrl = '/'; /** * 初始化函数 @@ -82,7 +76,6 @@ class HomeController extends BaseController { // 获取权限实例 parent::__construct(); - $this->auth = Auth::instance(); } /** @@ -92,9 +85,6 @@ class HomeController extends BaseController * @param string $app * @return Response * @throws InvalidArgumentException - * @throws DataNotFoundException - * @throws DbException - * @throws ModelNotFoundException */ protected function view(string $template = '', array $argc = [], string $app = 'index'): \support\Response { @@ -113,4 +103,14 @@ class HomeController extends BaseController return view($template, $argc, $app); } + + /** + * 退出登录 + * @access public + */ + public function logOut(): Response + { + UserService::logout(); + return $this->success('退出成功', '/'); + } } diff --git a/app/admin/controller/Index.php b/app/admin/controller/Index.php index b126b90..1049047 100644 --- a/app/admin/controller/Index.php +++ b/app/admin/controller/Index.php @@ -12,21 +12,19 @@ declare(strict_types=1); // +---------------------------------------------------------------------- namespace app\admin\controller; +use app\common\service\notice\EmailService; +use app\common\service\utils\FtpService; use Psr\SimpleCache\InvalidArgumentException; use support\Response; use think\db\exception\BindParamException; -use think\facade\Cache; +use support\Cache; use think\facade\Db; use Webman\Event\Event; use system\Random; -use think\cache\driver\Memcached; -use think\cache\driver\Redis; use think\db\exception\DataNotFoundException; use think\db\exception\DbException; use think\db\exception\ModelNotFoundException; use app\AdminController; -use app\common\library\Email; -use app\common\library\Ftp; use app\common\model\system\AdminNotice; use app\common\model\system\Attachment; use app\common\model\system\Config; @@ -389,7 +387,6 @@ class Index extends AdminController (new Config())->saveAll($config); $env = base_path() . '/.env'; $parse = parse_ini_file($env, true); - $parse['CACHE_DRIVER'] = $post['cache_type']; $parse['CACHE_HOSTNAME'] = $post['cache_host']; $parse['CACHE_HOSTPORT'] = $post['cache_port']; $parse['CACHE_SELECT'] = $post['cache_select']; @@ -401,7 +398,6 @@ class Index extends AdminController } // 清理系统核心缓存 - Cache::tag('core_system')->clear(); $configList = Cache::get('config_list'); foreach ($configList as $item) { Cache::delete($item); @@ -417,7 +413,7 @@ class Index extends AdminController public function testFtp(): Response { if (request()->isPost()) { - if (Ftp::instance()->ftpTest(request()->post())) { + if (FtpService::ftpTest(request()->post())) { return $this->success('上传测试成功!'); } } @@ -427,51 +423,49 @@ class Index extends AdminController /** * 邮件测试 + * @return Response */ - public function testEmail() + public function testEmail(): Response { if (request()->isPost()) { - $info = Email::instance()->testEMail(request()->post()); - return $info === true ? $this->success('测试邮件发送成功!') : $this->error($info); + try { + EmailService::testEmail(request()->post()); + } catch (\Exception $e) { + return $this->error($e->getMessage()); + } } + return $this->success('测试邮件发送成功!'); } /** * 缓存测试 + * @return Response */ - public function testCache() + public function testCache(): Response { if (request()->isPost()) { $param = request()->post(); - if (!isset($param['type']) || empty($param['host']) || empty($param['port'])) { + if (empty($param['host']) || empty($param['port'])) { return $this->error('参数错误!'); } - $options = [ - 'host' => $param['host'], - 'port' => (int)$param['port'], - 'username' => $param['user'], - 'password' => $param['pass'] - ]; + if (!extension_loaded('redis')) { + return $this->error('请先安装redis扩展!'); + } try { - if (strtolower($param['type']) == 'redis') { - $drive = new Redis($options); - } else { - $drive = new Memcached($options); - } + $redis = new \Redis(); + $redis->connect($param['host'], (int)$param['port']); + $redis->auth($param['pass']); + $redis->select((int)$param['select']); + $redis->set('key-test', time()); + $redis->close(); } catch (\Throwable $th) { return $this->error($th->getMessage()); } - - if ($drive->set('test', 'cacheOK', 1000)) { - return $this->success('缓存测试成功!'); - } else { - return $this->error('缓存测试失败!'); - } } + return $this->success('缓存测试成功!'); - return false; } } diff --git a/app/admin/controller/system/Admin.php b/app/admin/controller/system/Admin.php index 5869514..22dc99e 100644 --- a/app/admin/controller/system/Admin.php +++ b/app/admin/controller/system/Admin.php @@ -26,7 +26,7 @@ use think\db\exception\DataNotFoundException; use think\db\exception\DbException; use think\db\exception\ModelNotFoundException; use think\Exception; -use think\facade\Cache; +use support\Cache; use Webman\Http\Request; /** @@ -155,14 +155,13 @@ class Admin extends AdminController return $this->error('该用户名或邮箱已被注册!'); } - // 管理员加密 $post['pwd'] = encryptPwd($post['pwd']); $post['create_ip'] = request()->getRealIp(); $data = $this->model->create($post); - if (!is_empty($data->id)) { - $access['admin_id'] = $data->id; - $access['group_id'] = $data->group_id; + if (!is_empty($data['id'])) { + $access['admin_id'] = $data['id']; + $access['group_id'] = $data['group_id']; AdminAccessModel::insert($access); return $this->success('添加管理员成功!'); } else { @@ -182,95 +181,84 @@ class Admin extends AdminController if (request()->isPost()) { $id = request()->input('id'); - if (!empty($id) && is_numeric($id)) { // 验证数据 $post = request()->all(); - $post = request_validate_rules($post, get_class($this->model), 'edit'); - if (!is_array($post)) { - return $this->error($post); + $retError = request_validate_rules($post, get_class($this->model), 'edit'); + if (!is_array($retError)) { + return $this->error($retError); } - - if (!empty($post['pwd'])) { + if (isset($post['pwd']) && !empty($post['pwd'])) { $post['pwd'] = encryptPwd($post['pwd']); } else { + // 清空避免被覆盖 unset($post['pwd']); } - if ($this->model->update($post)) { $access['group_id'] = $post['group_id']; AdminAccessModel::where('admin_id', $id)->update($access); return $this->success('更新管理员成功!'); - } else { - return $this->error('更新管理员失败'); } } } + + return $this->error('更新管理员失败'); } /** * 编辑权限 + * @return Response */ - public function editRules() + public function editRules(): Response { - if (request()->isPost()) { - return $this->_update_RuleCates(); - } + return $this->updateRuleCates(); } /** * 编辑栏目权限 + * @return Response */ - public function editCates() + public function editCates(): Response { - return $this->_update_RuleCates(AUTH_CATE); + return $this->updateRuleCates(AUTH_CATE); } /** * 更新权限函数 * @access protected * @param string $type - * @return \support\Response|void + * @return Response */ - protected function _update_RuleCates(string $type = AUTH_RULES) + protected function updateRuleCates(string $type = AUTH_RULES): Response { - if (request()->isPost()) { + $admin_id = input('admin_id'); + $rules = request()->post($type) ?? []; + $access = $this->auth->getRulesNode($admin_id, $type); + $rules = array_diff($rules, $access[$this->auth->authGroup]); - $admin_id = input('admin_id'); - $rules = request()->post($type) ?? []; - - if (!empty($admin_id) && $admin_id > 0) { - - $access = $this->auth->getRulesNode($admin_id, $type); - $rules = array_diff($rules, $access[$this->auth->authGroup]); - - // 权限验证 - if (!$this->auth->checkRuleOrCateNodes($rules, $type, $this->auth->authPrivate)) { - return $this->error('没有权限!'); - } - - // 获取个人节点 - $differ = array_diff($access[$this->auth->authPrivate], $access[$this->auth->authGroup]); - $current = []; - if (!$this->auth->superAdmin()) { - $current = $this->auth->getRulesNode(); - $current = array_diff($differ, $current[$this->auth->authPrivate]); - } - - $rules = array_unique(array_merge($rules, $current)); - $AdminAccessModel = new AdminAccessModel(); - $data = [ - "$type" => implode(',', $rules) - ]; - - if ($AdminAccessModel->where('admin_id', $admin_id)->save($data)) { - return $this->success('更新权限成功!'); - } - - return $this->error('更新权限失败!'); - } + // 权限验证 + if (!$this->auth->checkRuleOrCateNodes($rules, $type, $this->auth->authPrivate)) { + return $this->error('没有权限!'); } + + // 获取个人节点 + $differ = array_diff($access[$this->auth->authPrivate], $access[$this->auth->authGroup]); + $current = []; + if (!$this->auth->superAdmin()) { + $current = $this->auth->getRulesNode(); + $current = array_diff($differ, $current[$this->auth->authPrivate]); + } + + $rules = array_unique(array_merge($rules, $current)); + $AdminAccessModel = new AdminAccessModel(); + $data = ["$type" => implode(',', $rules)]; + + if ($AdminAccessModel->update($data, ['admin_id' => $admin_id])) { + return $this->success('更新权限成功!'); + } + + return $this->error('更新权限失败!'); } /** @@ -278,7 +266,7 @@ class Admin extends AdminController * getAdminRules * @return mixed */ - public function getPermissions() + public function getPermissions(): mixed { $list = []; if (\request()->isAjax()) { @@ -666,7 +654,7 @@ class Admin extends AdminController // 清理内容 if ($type == 'all' || $type == 'content') { $session = session(AdminSession); - \think\facade\Cache::clear(); + \support\Cache::clear(); request()->session()->set(AdminSession, $session); } diff --git a/app/admin/controller/system/AdminRules.php b/app/admin/controller/system/AdminRules.php index 32ff1a0..0f6f5d8 100644 --- a/app/admin/controller/system/AdminRules.php +++ b/app/admin/controller/system/AdminRules.php @@ -50,34 +50,14 @@ class AdminRules extends AdminController } // 获取总数 - $total = $this->model->count(); + $total = $this->model->where($where)->count(); $list = $this->model->where($where)->order('sort asc')->select()->toArray(); foreach ($list as $key => $value) { $list[$key]['title'] = __($value['title']); } - // 自定义查询 - if (count($list) < $total) { - - $parentNode = []; // 查找父节点 - foreach ($list as $key => $value) { - if ($value['pid'] !== 0 && !list_search($list,['id'=>$value['pid']])) { - $parentNode[] = $this->parentNode($value['pid']); - } - } - - foreach ($parentNode as $key => $value) { - $list = array_merge($list,$value); - } - - } - - $rules = $this->model->getListTree(); - return $this->success('获取成功', '',[ - 'item'=> $list, - 'rules'=> $rules - ], - count($list),0); + $rules = list_to_tree($list,'id','pid','children',0); + return $this->success('获取成功', '/',$rules, $total); } diff --git a/app/admin/controller/system/Department.php b/app/admin/controller/system/Department.php index a562d64..f2111c4 100644 --- a/app/admin/controller/system/Department.php +++ b/app/admin/controller/system/Department.php @@ -73,11 +73,7 @@ class Department extends AdminController } $depart = $this->model->getListTree(); - return $this->success('获取成功', '',[ - 'item'=> $list, - 'depart'=> $depart - ], - count($list)); + return $this->success('获取成功', '',$depart, $total); } return view('system/department/index'); diff --git a/app/admin/controller/system/Plugin.php b/app/admin/controller/system/Plugin.php index a65bf17..bd945e8 100644 --- a/app/admin/controller/system/Plugin.php +++ b/app/admin/controller/system/Plugin.php @@ -81,7 +81,7 @@ class Plugin extends AdminController return $this->error('请勿重复安装插件'); } -// try { + try { $pluginZip = self::downLoad($name, ['name' => $name, 'token' => input('token')]); ZipArchives::unzip($pluginZip, plugin_path(), '', true); @@ -95,10 +95,10 @@ class Plugin extends AdminController self::pluginMenu($name); self::executeSql($name); self::enabled($name); -// } catch (\Throwable $th) { -// recursive_delete($pluginPath); -// return $this->error($th->getMessage(), null, self::$ServerBody, $th->getCode()); -// } + } catch (\Throwable $th) { + recursive_delete($pluginPath); + return $this->error($th->getMessage(), null, self::$ServerBody, $th->getCode()); + } return $this->success('插件安装成功', null, get_plugin_config($name, true)); } @@ -295,17 +295,15 @@ class Plugin extends AdminController if (request()->isPost()) { $post['extends'] = input('extends'); $post['rewrite'] = input('rewrite'); - foreach ($post['rewrite'] as $kk=>$vv) - { - if($kk[0]!='/')return $this->error('伪静态变量名称“'.$kk.'" 必须以“/”开头'); - $post['rewrite'][$kk]=str_replace('\\','/',trim($vv,'/\\')); - $value=explode('/',$post['rewrite'][$kk]); - if(count($value)<2){ - return $this->error('伪静态规则变量值,不符合规则'); + foreach ($post['rewrite'] as $kk => $vv) { + if ($kk[0] != '/') return $this->error('伪静态变量名称“' . $kk . '" 必须以“/”开头'); + $post['rewrite'][$kk] = str_replace('\\', '/', trim($vv, '/\\')); + $value = explode('/', $post['rewrite'][$kk]); + if (count($value) < 2) { + return $this->error('伪静态不符合规则'); } - if(strtoupper($value[count($value)-2][0]) !== $value[count($value)-2][0]) - { - return $this->error('伪静态规则变量值中,控制器首字母必须大写哦'); + if (strtoupper($value[count($value) - 2][0]) !== $value[count($value) - 2][0]) { + return $this->error('控制器首字母必须大写'); } } $config = array_merge($config, $post); diff --git a/app/admin/controller/system/User.php b/app/admin/controller/system/User.php index 7b4c4c0..4598359 100644 --- a/app/admin/controller/system/User.php +++ b/app/admin/controller/system/User.php @@ -21,7 +21,6 @@ use system\Random; use think\db\exception\DataNotFoundException; use think\db\exception\DbException; use think\db\exception\ModelNotFoundException; -use Webman\Http\Request; /** * 用户管理 diff --git a/app/admin/middleware/system/AdminLogin.php b/app/admin/middleware/system/AdminLogin.php index 5c303a2..54da5be 100644 --- a/app/admin/middleware/system/AdminLogin.php +++ b/app/admin/middleware/system/AdminLogin.php @@ -1,8 +1,6 @@ controller); $properties = $class->getDefaultProperties(); - $this->noNeedAuth = $properties['noNeedAuth'] ?? $this->noNeedAuth; + $this->noNeedLogin = $properties['noNeedLogin'] ?? $this->noNeedLogin; // 控制器鉴权 $method = '/' . $controller . '/' . $action; - if (!in_array('*', $this->noNeedAuth) - && !in_array(strtolower($method), array_map('strtolower', $this->noNeedAuth))) { + if (!in_array('*', $this->noNeedLogin) + && !in_array(strtolower($method), array_map('strtolower', $this->noNeedLogin))) { if (!Auth::instance()->SuperAdmin() && !Auth::instance()->check($method, get_admin_id())) { if (request()->isAjax()) { return json(['code' => 101, 'msg' => '没有权限']); diff --git a/app/admin/view/index/analysis.html b/app/admin/view/index/analysis.html index cfac3d4..e7c4af9 100644 --- a/app/admin/view/index/analysis.html +++ b/app/admin/view/index/analysis.html @@ -2,7 +2,7 @@
-
+
总销售额
@@ -19,7 +19,7 @@
-
+
访问量
@@ -32,7 +32,7 @@
-
+
支付笔数
@@ -45,7 +45,7 @@
-
+
活动运营效果
@@ -62,7 +62,7 @@
-
+
用户地域分布
@@ -70,7 +70,7 @@
-
+
在线人数
@@ -78,7 +78,7 @@
-
+
浏览器分布
diff --git a/app/admin/view/index/basecfg.html b/app/admin/view/index/basecfg.html index 42887b3..bf17b94 100644 --- a/app/admin/view/index/basecfg.html +++ b/app/admin/view/index/basecfg.html @@ -162,8 +162,7 @@
* {:__('是否开启手机版模式')}
-
style="display:none;" - > +
style="display:none;" >
@@ -328,88 +327,61 @@
checked > checked >
* {:__('开启数据库缓存会提高网站性能!')}
-
- style="display:none;" > -
- -
- -
-
- -
+
+ +
+
- -
- -
- -
-
* {:__('单位 /秒')}
+
+
+ +
+
- -
- style="display:none;" > -
- -
- -
-
-
- -
- -
-
-
- -
- -
-
-
- -
- -
-
-
- -
- -
- -
+
+
+ +
+ +
+
* {:__('单位 /秒')}
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
@@ -427,8 +399,7 @@
- +
@@ -1835,21 +1806,11 @@ @@ -298,10 +299,35 @@ - -
-
-
- -
- -
- -
-
-
- -
- -
- -
- - - -
-
-
diff --git a/app/index/view/user/forgot.html b/app/index/view/user/forgot.html index 8c77d9b..78ce889 100644 --- a/app/index/view/user/forgot.html +++ b/app/index/view/user/forgot.html @@ -1,86 +1,89 @@ - + - SwiftAdmin 用户登录 - + {$site_name} 找回密码 + + + + + + + + + + -
-
- +
- +
-
- +
+
-
- +
-
\ No newline at end of file diff --git a/app/index/view/user/header.html b/app/index/view/user/header.html deleted file mode 100644 index 2552297..0000000 --- a/app/index/view/user/header.html +++ /dev/null @@ -1,40 +0,0 @@ -
- - -
    - -
  • - -
  • -
- -
\ No newline at end of file diff --git a/app/index/view/user/include.html b/app/index/view/user/include.html index 9a3d422..54c3d5a 100644 --- a/app/index/view/user/include.html +++ b/app/index/view/user/include.html @@ -9,7 +9,7 @@ - + -
-
-
-
- -
- -
-
-
- -
- -
- -
- - -
-
-
diff --git a/app/index/view/user/notice.html b/app/index/view/user/notice.html deleted file mode 100644 index 4aa1867..0000000 --- a/app/index/view/user/notice.html +++ /dev/null @@ -1,35 +0,0 @@ - - - - - 消息管理 | {$site_name} - - - - -
- - -
-
- - -
-
- -
- -
-

消息 示例页面

-
- -
- - -
- - - - - - \ No newline at end of file diff --git a/app/index/view/user/register.html b/app/index/view/user/register.html index 4f3bde5..551296f 100644 --- a/app/index/view/user/register.html +++ b/app/index/view/user/register.html @@ -2,85 +2,125 @@ - SwiftAdmin 用户注册 - + {$site_name} 用户注册 + + + + + + + + + + - -
-
- -
- -
- + +
+
-
-
- -
- +
+ +
-
-
- -
- -
-
- +
+ + +
+ +
+ +
+
+ + + 获取验证码 +
+ +
+ +
+
+ +
- -
- +
+ +
+
- -
- -
- -
-
+
- -
- -
- -
+
+ 未注册手机验证后自动登录,注册即代表同意《用户协议》以及网站《隐私保护指引》
- + +
- - + + \ No newline at end of file diff --git a/app/index/view/user/security.html b/app/index/view/user/security.html index df0b13d..6fbd74d 100644 --- a/app/index/view/user/security.html +++ b/app/index/view/user/security.html @@ -60,7 +60,7 @@ 安全性高的密码可以使账户更安全;互联网账号存在被盗风险,建议您定期更换密码
@@ -84,7 +84,7 @@
@@ -108,7 +108,7 @@
diff --git a/app/index/view/user/userNav.html b/app/index/view/user/userNav.html index d67a6d8..241dc10 100644 --- a/app/index/view/user/userNav.html +++ b/app/index/view/user/userNav.html @@ -15,7 +15,7 @@
我的资料
站内消息
-
登录日志
+
登录日志
实名认证
安全中心
diff --git a/app/install/controller/Index.php b/app/install/controller/Index.php index e7dfa2e..977960b 100644 --- a/app/install/controller/Index.php +++ b/app/install/controller/Index.php @@ -3,8 +3,7 @@ declare (strict_types=1); namespace app\install\controller; -use app\common\library\DataBase; -use think\facade\Cache; +use support\Cache; use app\BaseController; const SUCCESS = 'layui-icon-ok-circle'; @@ -36,7 +35,7 @@ class Index extends BaseController // 检测生产环境 foreach ($this->checkEnv() as $key => $value) { - if ($key == 'php' && (float)$value < 8.0.0) { + if ($key == 'php' && (float)$value < 8.0) { return $this->error('PHP版本过低!'); } } diff --git a/app/install/install.sql b/app/install/install.sql index 6e60113..936a9ee 100644 --- a/app/install/install.sql +++ b/app/install/install.sql @@ -11,7 +11,7 @@ Target Server Version : 50738 File Encoding : 65001 - Date: 25/04/2023 20:00:37 + Date: 19/06/2023 14:24:08 */ SET NAMES utf8mb4; @@ -49,15 +49,15 @@ CREATE TABLE `__PREFIX__admin` ( `delete_time` int(11) NULL DEFAULT NULL COMMENT '软删除标识', PRIMARY KEY (`id`) USING BTREE, INDEX `id`(`id`) USING BTREE, - UNIQUE INDEX `name`(`name`) USING BTREE, + INDEX `name`(`name`) USING BTREE, INDEX `pwd`(`pwd`) USING BTREE ) ENGINE = InnoDB AUTO_INCREMENT = 3 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '后台管理员表' ROW_FORMAT = DYNAMIC; -- ---------------------------- -- Records of __PREFIX__admin -- ---------------------------- -INSERT INTO `__PREFIX__admin` VALUES (1, '1', '2', '3', 'admin', '超级管理员', '13682bec405cf4b9002e6e8306312ce6', 1, 'a:3:{i:0;s:12:\"测试效果\";i:1;s:15:\"隔壁帅小伙\";i:2;s:9:\"技术宅\";}', '/upload/avatars/f8e34ec67a2a0233_100x100.jpg', '海阔天空,有容乃大', 'admin@swiftadmin.net', '0310', '15188888888', '高级管理人员', 391, '河北省邯郸市', '127.0.0.1', 1682411837, '3232254977', 1, NULL, 1596682835, 1682411837, NULL); -INSERT INTO `__PREFIX__admin` VALUES (2, '2', '4', '5,6', 'ceshi', '测试用户', '13682bec405cf4b9002e6e8306312ce6', 1, 'a:3:{i:0;s:6:\"呵呵\";i:1;s:5:\"Think\";i:2;s:12:\"铁血柔肠\";}', '/upload/avatars/a0b923820dcc509a_100x100.png', 'PHP是全世界最好的语言', 'baimei@your.com', '0310', '15188888888', '我原本以为吕布已经天下无敌了,没想到还有比吕布勇猛的,这谁的部将?', 57, '河北省邯郸市廉颇大道110号指挥中心', '127.0.0.1', 1682221728, '3232254977', 1, '违规', 1609836672, 1682221728, NULL); +INSERT INTO `__PREFIX__admin` VALUES (1, '1,2', '2', '3', 'admin', '超级管理员', '13682bec405cf4b9002e6e8306312ce6', 1, 'a:3:{i:0;s:12:\"测试效果\";i:1;s:15:\"隔壁帅小伙\";i:2;s:9:\"技术宅\";}', '/upload/avatars/f8e34ec67a2a0233_100x100.jpg', '海阔天空,有容乃大', 'admin@swiftadmin.net', '0310', '15188888888', '高级管理人员', 402, '河北省邯郸市', '127.0.0.1', 1687154816, '3232254977', 1, NULL, 1596682835, 1687154816, NULL); +INSERT INTO `__PREFIX__admin` VALUES (2, '2', '4', '5,4', 'ceshi', '测试用户', '13682bec405cf4b9002e6e8306312ce6', 1, 'a:3:{i:0;s:6:\"呵呵\";i:1;s:5:\"Think\";i:2;s:12:\"铁血柔肠\";}', '/upload/avatars/a0b923820dcc509a_100x100.png', 'PHP是全世界最好的语言', 'baimei@your.com', '0310', '15188888888', '我原本以为吕布已经天下无敌了,没想到还有比吕布勇猛的,这谁的部将?', 58, '河北省邯郸市廉颇大道110号指挥中心', '127.0.0.1', 1687154742, '3232254977', 1, '违规', 1609836672, 1687154742, NULL); -- ---------------------------- -- Table structure for __PREFIX__admin_access @@ -75,8 +75,8 @@ CREATE TABLE `__PREFIX__admin_access` ( -- ---------------------------- -- Records of __PREFIX__admin_access -- ---------------------------- -INSERT INTO `__PREFIX__admin_access` VALUES (1, '1', '5,11,12,13,15,16,17,18,19,20,21,22,23,24,25,26,115,116', NULL); -INSERT INTO `__PREFIX__admin_access` VALUES (2, '2', '5,11,12,13,15,16,17,18,19,20,21,22,23,24,25,26,115,116', NULL); +INSERT INTO `__PREFIX__admin_access` VALUES (1, '1,2', '5,11,12,13,15,16,17,18,19,20,21,22,23,24,25,26,115,116', NULL); +INSERT INTO `__PREFIX__admin_access` VALUES (2, '2', '85,86,90,91,92,93,100,101,103,107,108,109,110,111,112', ''); -- ---------------------------- -- Table structure for __PREFIX__admin_group @@ -103,7 +103,7 @@ CREATE TABLE `__PREFIX__admin_group` ( -- Records of __PREFIX__admin_group -- ---------------------------- INSERT INTO `__PREFIX__admin_group` VALUES (1, 0, 1, '超级管理员', 'admin', 1, 1, '网站超级管理员组的', '100,107,108,109,110,111,112', NULL, 'layui-bg-blue', 1607832158, NULL); -INSERT INTO `__PREFIX__admin_group` VALUES (2, 1, 2, '网站编辑', 'editor', 1, 1, '负责公司软文的编写', '', NULL, 'layui-bg-cyan', 1607832158, NULL); +INSERT INTO `__PREFIX__admin_group` VALUES (2, 1, 2, '网站编辑', 'editor', 1, 1, '负责公司软文的编写', '', '5', 'layui-bg-cyan', 1607832158, NULL); -- ---------------------------- -- Table structure for __PREFIX__admin_log @@ -123,7 +123,7 @@ CREATE TABLE `__PREFIX__admin_log` ( `create_time` int(11) NULL DEFAULT NULL COMMENT '登录时间', PRIMARY KEY (`id`) USING BTREE, INDEX `user_ip`(`user_ip`) USING BTREE -) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '用户登录记录表' ROW_FORMAT = DYNAMIC; +) ENGINE = InnoDB AUTO_INCREMENT = 14 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '用户登录记录表' ROW_FORMAT = DYNAMIC; -- ---------------------------- -- Records of __PREFIX__admin_log @@ -154,8 +154,8 @@ CREATE TABLE `__PREFIX__admin_notice` ( -- Records of __PREFIX__admin_notice -- ---------------------------- INSERT INTO `__PREFIX__admin_notice` VALUES (1, 'notice', 1, '系统通知', '您有新的通知内容', 0, '10.10.11.22', 0, 0, 0, 1668249585, NULL); -INSERT INTO `__PREFIX__admin_notice` VALUES (2, 'message', 1, '请注意查收短消息', '听说你又接了一个大项目', 2, '10.10.11.22', 0, 0, 1, 1668323353, NULL); -INSERT INTO `__PREFIX__admin_notice` VALUES (3, 'todo', 1, '您有一项待办', '请完成项目的迭代工作与BUG修复', 0, '10.10.11.22', 0, 0, 0, 1668393025, NULL); +INSERT INTO `__PREFIX__admin_notice` VALUES (2, 'message', 1, '请注意查收短消息', '听说你又接了一个大项目', 2, '10.10.11.22', 0, 0, 0, 1668323353, NULL); +INSERT INTO `__PREFIX__admin_notice` VALUES (3, 'todo', 1, '您有一项待办', '请完成项目的迭代工作与BUG修复', 0, '10.10.11.22', 0, 0, 3, 1668393025, NULL); -- ---------------------------- -- Table structure for __PREFIX__admin_rules @@ -181,7 +181,7 @@ CREATE TABLE `__PREFIX__admin_rules` ( PRIMARY KEY (`id`) USING BTREE, INDEX `id`(`id`) USING BTREE, INDEX `sort`(`sort`) USING BTREE -) ENGINE = InnoDB AUTO_INCREMENT = 123 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '菜单权限表' ROW_FORMAT = DYNAMIC; +) ENGINE = InnoDB AUTO_INCREMENT = 146 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '菜单权限表' ROW_FORMAT = DYNAMIC; -- ---------------------------- -- Records of __PREFIX__admin_rules @@ -190,7 +190,7 @@ INSERT INTO `__PREFIX__admin_rules` VALUES (1, 0, 'Dashboard', 'Dashboard', 'das INSERT INTO `__PREFIX__admin_rules` VALUES (2, 1, '控制台', '/index/console', 'index:console', 0, '', '', 2, '', 0, 1, 0, 1657002180, 1657002180, NULL); INSERT INTO `__PREFIX__admin_rules` VALUES (3, 1, '分析页', '/index/analysis', 'index:analysis', 0, '', '', 3, '', 0, 1, 0, 1657002180, 1657002180, NULL); INSERT INTO `__PREFIX__admin_rules` VALUES (4, 1, '监控页', '/index/monitor', 'index:monitor', 0, '', '', 4, '', 0, 1, 0, 1657002180, 1657002180, NULL); -INSERT INTO `__PREFIX__admin_rules` VALUES (5, 0, '系统管理', 'System', 'system', 0, '', '', 5, 'layui-icon-set-fill', 1, 1, 0, 1657367099, 1657002180, NULL); +INSERT INTO `__PREFIX__admin_rules` VALUES (5, 0, '系统管理', 'System', 'system', 0, '', '', 5, 'layui-icon-set-fill', 1, 1, 0, 1687144413, 1657002180, NULL); INSERT INTO `__PREFIX__admin_rules` VALUES (6, 5, '基本设置', '/index/basecfg', 'index:basecfg', 0, '', '', 6, '', 1, 1, 0, 1657002180, 1657002180, NULL); INSERT INTO `__PREFIX__admin_rules` VALUES (7, 6, '修改配置', '/index/baseset', 'index:baseset', 2, '', '', 7, '', 1, 1, 0, 1657002180, 1657002180, NULL); INSERT INTO `__PREFIX__admin_rules` VALUES (8, 6, 'FTP接口', '/index/testftp', 'index:testftp', 2, '', '', 8, '', 0, 1, 0, 1657002180, 1657002180, NULL); @@ -242,15 +242,15 @@ INSERT INTO `__PREFIX__admin_rules` VALUES (53, 50, '删除', '/system/LoginLog/ INSERT INTO `__PREFIX__admin_rules` VALUES (54, 50, '状态', '/system/LoginLog/status', 'system:LoginLog:status', 1, '', '', 54, NULL, 1, 1, 0, 1657002180, 1657002180, NULL); INSERT INTO `__PREFIX__admin_rules` VALUES (55, 0, '高级管理', 'Management', 'management', 0, '', '', 55, 'layui-icon-engine', 1, 1, 0, 1657002180, 1657002180, NULL); INSERT INTO `__PREFIX__admin_rules` VALUES (56, 55, '公司管理', '/system/Company/index', 'system:Company:index', 0, '', '', 56, '', 1, 1, 0, 1657002180, 1657002180, NULL); -INSERT INTO `__PREFIX__admin_rules` VALUES (57, 56, '查看', '/system/Company/index', 'system:Company:index', 1, '', '', 57, '', 1, 1, 0, 1657002180, 1657002180, NULL); -INSERT INTO `__PREFIX__admin_rules` VALUES (58, 56, '添加', '/system/Company/add', 'system:Company:add', 1, '', '', 58, '', 1, 1, 0, 1657002180, 1657002180, NULL); +INSERT INTO `__PREFIX__admin_rules` VALUES (57, 56, '查看', '/system/Company/index', 'system:Company:index', 1, '', '', 57, '', 1, 1, 0, 1686755836, 1657002180, NULL); +INSERT INTO `__PREFIX__admin_rules` VALUES (58, 56, '添加', '/system/Company/add', 'system:Company:add', 1, '', '', 58, '', 1, 1, 0, 1687147120, 1657002180, NULL); INSERT INTO `__PREFIX__admin_rules` VALUES (59, 56, '编辑', '/system/Company/edit', 'system:Company:edit', 1, '', '', 59, '', 1, 1, 0, 1657002180, 1657002180, NULL); INSERT INTO `__PREFIX__admin_rules` VALUES (60, 56, '删除', '/system/Company/del', 'system:Company:del', 1, '', '', 60, '', 1, 1, 0, 1657002180, 1657002180, NULL); INSERT INTO `__PREFIX__admin_rules` VALUES (61, 56, '状态', '/system/Company/status', 'system:Company:status', 2, '', '', 61, '', 1, 1, 0, 1657002180, 1657002180, NULL); INSERT INTO `__PREFIX__admin_rules` VALUES (62, 55, '部门管理', '/system/Department/index', 'system:Department:index', 0, '', '', 62, '', 1, 1, 0, 1657002180, 1657002180, NULL); INSERT INTO `__PREFIX__admin_rules` VALUES (63, 62, '查看', '/system/Department/index', 'system:Department:index', 1, '', '', 63, '', 1, 1, 0, 1657002180, 1657002180, NULL); INSERT INTO `__PREFIX__admin_rules` VALUES (64, 62, '添加', '/system/Department/add', 'system:Department:add', 1, '', '', 64, '', 1, 1, 0, 1657002180, 1657002180, NULL); -INSERT INTO `__PREFIX__admin_rules` VALUES (65, 62, '编辑', '/system/Department/edit', 'system:Department:edit', 1, '', '', 65, '', 1, 1, 0, 1657002180, 1657002180, NULL); +INSERT INTO `__PREFIX__admin_rules` VALUES (65, 62, '编辑', '/system/Department/edit', 'system:Department:edit', 1, '', '', 65, '', 1, 1, 0, 1686881933, 1657002180, NULL); INSERT INTO `__PREFIX__admin_rules` VALUES (66, 62, '删除', '/system/Department/del', 'system:Department:del', 1, '', '', 66, '', 1, 1, 0, 1657002180, 1657002180, NULL); INSERT INTO `__PREFIX__admin_rules` VALUES (67, 62, '状态', '/system/Department/status', 'system:Department:status', 2, '', '', 67, '', 1, 1, 0, 1657002180, 1657002180, NULL); INSERT INTO `__PREFIX__admin_rules` VALUES (68, 55, '岗位管理', '/system/Jobs/index', 'system:Jobs:index', 0, '', '', 68, '', 1, 1, 0, 1657002180, 1657002180, NULL); @@ -393,13 +393,13 @@ INSERT INTO `__PREFIX__config` VALUES (16, 'site_notice', 1, 'site', 'string', ' INSERT INTO `__PREFIX__config` VALUES (17, 'auth_key', 0, NULL, 'string', '38nfCIlkqancd', '授权码'); INSERT INTO `__PREFIX__config` VALUES (18, 'auth_code', 0, NULL, 'string', 'wMRkfKO4Lr37HTJQ', '加密KEY'); INSERT INTO `__PREFIX__config` VALUES (19, 'system_logs', 0, NULL, 'string', '0', '后台日志'); -INSERT INTO `__PREFIX__config` VALUES (20, 'system_exception', 0, NULL, 'string', '0', '异常日志'); +INSERT INTO `__PREFIX__config` VALUES (20, 'system_exception', 0, NULL, 'string', '1', '异常日志'); INSERT INTO `__PREFIX__config` VALUES (21, 'cache_status', 0, 'cache', 'string', '1', '缓存状态'); INSERT INTO `__PREFIX__config` VALUES (22, 'cache_type', 0, 'cache', 'string', 'redis', '缓存类型'); INSERT INTO `__PREFIX__config` VALUES (23, 'cache_time', 0, 'cache', 'string', '6000', '缓存时间'); INSERT INTO `__PREFIX__config` VALUES (24, 'cache_host', 0, 'cache', 'string', '127.0.0.1', '服务器IP'); INSERT INTO `__PREFIX__config` VALUES (25, 'cache_port', 0, 'cache', 'string', '6379', '端口'); -INSERT INTO `__PREFIX__config` VALUES (26, 'cache_select', 0, 'cache', 'string', '2', '缓存数据库'); +INSERT INTO `__PREFIX__config` VALUES (26, 'cache_select', 0, 'cache', 'string', '4', '缓存数据库'); INSERT INTO `__PREFIX__config` VALUES (27, 'cache_user', 0, 'cache', 'string', '', '用户名'); INSERT INTO `__PREFIX__config` VALUES (28, 'cache_pass', 0, 'cache', 'string', '', '密码'); INSERT INTO `__PREFIX__config` VALUES (29, 'upload_path', 0, 'upload', 'string', 'upload', '上传路径'); @@ -520,14 +520,14 @@ CREATE TABLE `__PREFIX__dictionary` ( -- ---------------------------- -- Records of __PREFIX__dictionary -- ---------------------------- -INSERT INTO `__PREFIX__dictionary` VALUES (1, 0, '内容属性', 'content', 1, '', 1, 1682217587, 1637738903, NULL); +INSERT INTO `__PREFIX__dictionary` VALUES (1, 0, '内容属性', 'content', 1, '', 1, 1687140686, 1637738903, NULL); INSERT INTO `__PREFIX__dictionary` VALUES (2, 1, '头条', '1', 2, '', 1, 1669690446, 1638093403, NULL); INSERT INTO `__PREFIX__dictionary` VALUES (3, 1, '推荐', '2', 3, '', 1, 1669690444, 1638093425, NULL); INSERT INTO `__PREFIX__dictionary` VALUES (4, 1, '幻灯', '3', 4, '', 1, 1669690440, 1638093430, NULL); INSERT INTO `__PREFIX__dictionary` VALUES (5, 1, '滚动', '4', 5, '', 1, 1669690442, 1638093435, NULL); INSERT INTO `__PREFIX__dictionary` VALUES (6, 1, '图文', '5', 6, '', 1, 1638093456, 1638093456, NULL); INSERT INTO `__PREFIX__dictionary` VALUES (7, 1, '跳转', '6', 7, '', 1, 1638093435, 1638093435, NULL); -INSERT INTO `__PREFIX__dictionary` VALUES (8, 0, '友链类型', 'friendlink', 8, '', 1, 1682217595, 1638093456, NULL); +INSERT INTO `__PREFIX__dictionary` VALUES (8, 0, '友链类型', 'friendlink', 8, '', 1, 1687140689, 1638093456, NULL); INSERT INTO `__PREFIX__dictionary` VALUES (9, 8, '资源', '1', 9, '', 1, 1638093430, 1638093430, NULL); INSERT INTO `__PREFIX__dictionary` VALUES (10, 8, '社区', '2', 10, '', 1, 1638093435, 1638093435, NULL); INSERT INTO `__PREFIX__dictionary` VALUES (11, 8, '合作伙伴', '3', 11, '', 1, 1659450310, 1638093456, NULL); @@ -588,7 +588,7 @@ CREATE TABLE `__PREFIX__system_log` ( INDEX `method`(`method`) USING BTREE, INDEX `create_time`(`create_time`) USING BTREE, INDEX `line`(`line`) USING BTREE -) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '系统日志表' ROW_FORMAT = DYNAMIC; +) ENGINE = InnoDB AUTO_INCREMENT = 32 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '系统日志表' ROW_FORMAT = DYNAMIC; -- ---------------------------- -- Records of __PREFIX__system_log @@ -645,12 +645,12 @@ CREATE TABLE `__PREFIX__user` ( INDEX `create_time`(`create_time`) USING BTREE, INDEX `login_time`(`login_time`) USING BTREE, INDEX `invite_id`(`invite_id`) USING BTREE -) ENGINE = InnoDB AUTO_INCREMENT = 6 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '会员管理' ROW_FORMAT = DYNAMIC; +) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '会员管理' ROW_FORMAT = DYNAMIC; -- ---------------------------- -- Records of __PREFIX__user -- ---------------------------- -INSERT INTO `__PREFIX__user` VALUES (1, 1, '创始人', '513bd12b00b512d0b879962b777b5560', 'wdONQC', NULL, NULL, '/upload/avatars/a0b923820dcc509a_100x100.png', '这个人很懒,什么都没有留下~ ', 'test@swiftadmin.net', NULL, '林自图', 0, '2022-11-04 20:04:55', '15253325632533', '河北省邯郸市中华区人民东路023号', '', 0, 100, 1983.56, '你的幸运数字是?', 'aa', 1, 1, 10001, 'myKDalrGjpEVxWPQcXzwFu', NULL, NULL, NULL, NULL, NULL, NULL, 1, '127.0.0.1', 1682390408, 162, NULL, '1861775580', 1657332918, NULL); +INSERT INTO `__PREFIX__user` VALUES (1, 1, '创始人', '513bd12b00b512d0b879962b777b5560', 'wdONQC', NULL, NULL, '/upload/avatars/a0b923820dcc509a_100x100.png', '这个人很懒,什么都没有留下~ ', 'test@swiftadmin.net', NULL, '林自图', 0, '2022-11-04 20:04:55', '15253325632533', '河北省邯郸市中华区人民东路023号', '', 0, 100, 1983.56, '你的幸运数字是?', '1', 1, 1, 10001, 'myKDalrGjpEVxWPQcXzwFu', NULL, NULL, NULL, NULL, NULL, NULL, 1, '127.0.0.1', 1686621464, 163, NULL, '1861775580', 1657332918, NULL); -- ---------------------------- -- Table structure for __PREFIX__user_group @@ -697,7 +697,7 @@ CREATE TABLE `__PREFIX__user_log` ( `create_time` int(11) NULL DEFAULT NULL COMMENT '登录时间', PRIMARY KEY (`id`) USING BTREE, INDEX `user_ip`(`login_ip`) USING BTREE -) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '用户记录表' ROW_FORMAT = DYNAMIC; +) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '用户记录表' ROW_FORMAT = DYNAMIC; -- ---------------------------- -- Records of __PREFIX__user_log @@ -775,4 +775,4 @@ CREATE TABLE `__PREFIX__user_validate` ( -- Records of __PREFIX__user_validate -- ---------------------------- -SET FOREIGN_KEY_CHECKS = 1; \ No newline at end of file +SET FOREIGN_KEY_CHECKS = 1; diff --git a/app/install/view/index/step1.html b/app/install/view/index/step1.html index bd7310f..36e928f 100644 --- a/app/install/view/index/step1.html +++ b/app/install/view/index/step1.html @@ -61,8 +61,8 @@ php - >= 8.0.0 - style="color:red;" >{$checkEnv.php} + >= 8.0 + style="color:red;" >{$checkEnv.php} mysqli diff --git a/app/queue/redis/Works.php b/app/queue/redis/Worker.php similarity index 95% rename from app/queue/redis/Works.php rename to app/queue/redis/Worker.php index 47026cb..1c6eeae 100644 --- a/app/queue/redis/Works.php +++ b/app/queue/redis/Worker.php @@ -9,7 +9,7 @@ use Webman\RedisQueue\Consumer; * @author meystack * @date 2022-11-20 */ -class Works implements Consumer +class Worker implements Consumer { /** * 消费队列名称 diff --git a/composer.json b/composer.json index a25451f..2c9223a 100644 --- a/composer.json +++ b/composer.json @@ -31,7 +31,6 @@ "workerman/webman-framework": "1.5.5", "webman/think-orm": "^1.0", "webman/redis-queue": "^1.2", - "webman/think-cache": "^1.0", "webman/console": "1.2.33", "webman/event": "^1.0", "webman/captcha": "^1.0", @@ -47,7 +46,9 @@ "php-di/php-di": "^6.4", "yansongda/pay": "~3.1.0", "overtrue/pinyin": "5.0", - "phpoffice/phpspreadsheet": "^1.28" + "phpoffice/phpspreadsheet": "^1.28", + "illuminate/redis": "^9.52", + "symfony/cache": "^5.4" }, "suggest": { "ext-event": "For better performance. " diff --git a/composer.lock b/composer.lock index 3ab5255..f39ab27 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "2cbba4fe5ca85e7dbbd2faf006d1c851", + "content-hash": "df8415336cf0e760186adf8615f13f1c", "packages": [ { "name": "bacon/bacon-qr-code", @@ -665,6 +665,326 @@ ], "time": "2023-04-17T16:11:26+00:00" }, + { + "name": "illuminate/collections", + "version": "v9.52.9", + "source": { + "type": "git", + "url": "https://github.com/illuminate/collections.git", + "reference": "0168d0e44ea0c4fe5451fe08cde7049b9e9f9741" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/illuminate/collections/zipball/0168d0e44ea0c4fe5451fe08cde7049b9e9f9741", + "reference": "0168d0e44ea0c4fe5451fe08cde7049b9e9f9741", + "shasum": "" + }, + "require": { + "illuminate/conditionable": "^9.0", + "illuminate/contracts": "^9.0", + "illuminate/macroable": "^9.0", + "php": "^8.0.2" + }, + "suggest": { + "symfony/var-dumper": "Required to use the dump method (^6.0)." + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "9.x-dev" + } + }, + "autoload": { + "files": [ + "helpers.php" + ], + "psr-4": { + "Illuminate\\Support\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Taylor Otwell", + "email": "taylor@laravel.com" + } + ], + "description": "The Illuminate Collections package.", + "homepage": "https://laravel.com", + "support": { + "issues": "https://github.com/laravel/framework/issues", + "source": "https://github.com/laravel/framework" + }, + "time": "2023-02-22T11:32:27+00:00" + }, + { + "name": "illuminate/conditionable", + "version": "v9.52.9", + "source": { + "type": "git", + "url": "https://github.com/illuminate/conditionable.git", + "reference": "bea24daa0fa84b7e7b0d5b84f62c71b7e2dc3364" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/illuminate/conditionable/zipball/bea24daa0fa84b7e7b0d5b84f62c71b7e2dc3364", + "reference": "bea24daa0fa84b7e7b0d5b84f62c71b7e2dc3364", + "shasum": "" + }, + "require": { + "php": "^8.0.2" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "9.x-dev" + } + }, + "autoload": { + "psr-4": { + "Illuminate\\Support\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Taylor Otwell", + "email": "taylor@laravel.com" + } + ], + "description": "The Illuminate Conditionable package.", + "homepage": "https://laravel.com", + "support": { + "issues": "https://github.com/laravel/framework/issues", + "source": "https://github.com/laravel/framework" + }, + "time": "2023-02-01T21:42:32+00:00" + }, + { + "name": "illuminate/contracts", + "version": "v9.52.9", + "source": { + "type": "git", + "url": "https://github.com/illuminate/contracts.git", + "reference": "44f65d723b13823baa02ff69751a5948bde60c22" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/illuminate/contracts/zipball/44f65d723b13823baa02ff69751a5948bde60c22", + "reference": "44f65d723b13823baa02ff69751a5948bde60c22", + "shasum": "" + }, + "require": { + "php": "^8.0.2", + "psr/container": "^1.1.1|^2.0.1", + "psr/simple-cache": "^1.0|^2.0|^3.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "9.x-dev" + } + }, + "autoload": { + "psr-4": { + "Illuminate\\Contracts\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Taylor Otwell", + "email": "taylor@laravel.com" + } + ], + "description": "The Illuminate Contracts package.", + "homepage": "https://laravel.com", + "support": { + "issues": "https://github.com/laravel/framework/issues", + "source": "https://github.com/laravel/framework" + }, + "time": "2023-02-08T14:36:30+00:00" + }, + { + "name": "illuminate/macroable", + "version": "v9.52.9", + "source": { + "type": "git", + "url": "https://github.com/illuminate/macroable.git", + "reference": "e3bfaf6401742a9c6abca61b9b10e998e5b6449a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/illuminate/macroable/zipball/e3bfaf6401742a9c6abca61b9b10e998e5b6449a", + "reference": "e3bfaf6401742a9c6abca61b9b10e998e5b6449a", + "shasum": "" + }, + "require": { + "php": "^8.0.2" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "9.x-dev" + } + }, + "autoload": { + "psr-4": { + "Illuminate\\Support\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Taylor Otwell", + "email": "taylor@laravel.com" + } + ], + "description": "The Illuminate Macroable package.", + "homepage": "https://laravel.com", + "support": { + "issues": "https://github.com/laravel/framework/issues", + "source": "https://github.com/laravel/framework" + }, + "time": "2022-08-09T13:29:29+00:00" + }, + { + "name": "illuminate/redis", + "version": "v9.52.9", + "source": { + "type": "git", + "url": "https://github.com/illuminate/redis.git", + "reference": "856adc664a35dfcb8c59f8adbc97d5fbd250f9c2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/illuminate/redis/zipball/856adc664a35dfcb8c59f8adbc97d5fbd250f9c2", + "reference": "856adc664a35dfcb8c59f8adbc97d5fbd250f9c2", + "shasum": "" + }, + "require": { + "illuminate/collections": "^9.0", + "illuminate/contracts": "^9.0", + "illuminate/macroable": "^9.0", + "illuminate/support": "^9.0", + "php": "^8.0.2" + }, + "suggest": { + "ext-redis": "Required to use the phpredis connector (^4.0|^5.0).", + "predis/predis": "Required to use the predis connector (^1.1.9|^2.0.2)." + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "9.x-dev" + } + }, + "autoload": { + "psr-4": { + "Illuminate\\Redis\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Taylor Otwell", + "email": "taylor@laravel.com" + } + ], + "description": "The Illuminate Redis package.", + "homepage": "https://laravel.com", + "support": { + "issues": "https://github.com/laravel/framework/issues", + "source": "https://github.com/laravel/framework" + }, + "time": "2023-01-22T17:38:17+00:00" + }, + { + "name": "illuminate/support", + "version": "v9.52.9", + "source": { + "type": "git", + "url": "https://github.com/illuminate/support.git", + "reference": "3fc1d9deb1dc8c256c3394e1547dccdd386bb2f5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/illuminate/support/zipball/3fc1d9deb1dc8c256c3394e1547dccdd386bb2f5", + "reference": "3fc1d9deb1dc8c256c3394e1547dccdd386bb2f5", + "shasum": "" + }, + "require": { + "doctrine/inflector": "^2.0", + "ext-ctype": "*", + "ext-filter": "*", + "ext-mbstring": "*", + "illuminate/collections": "^9.0", + "illuminate/conditionable": "^9.0", + "illuminate/contracts": "^9.0", + "illuminate/macroable": "^9.0", + "nesbot/carbon": "^2.62.1", + "php": "^8.0.2", + "voku/portable-ascii": "^2.0" + }, + "conflict": { + "tightenco/collect": "<5.5.33" + }, + "suggest": { + "illuminate/filesystem": "Required to use the composer class (^9.0).", + "league/commonmark": "Required to use Str::markdown() and Stringable::markdown() (^2.0.2).", + "ramsey/uuid": "Required to use Str::uuid() (^4.7).", + "symfony/process": "Required to use the composer class (^6.0).", + "symfony/uid": "Required to use Str::ulid() (^6.0).", + "symfony/var-dumper": "Required to use the dd function (^6.0).", + "vlucas/phpdotenv": "Required to use the Env class and env helper (^5.4.1)." + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "9.x-dev" + } + }, + "autoload": { + "files": [ + "helpers.php" + ], + "psr-4": { + "Illuminate\\Support\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Taylor Otwell", + "email": "taylor@laravel.com" + } + ], + "description": "The Illuminate Support package.", + "homepage": "https://laravel.com", + "support": { + "issues": "https://github.com/laravel/framework/issues", + "source": "https://github.com/laravel/framework" + }, + "time": "2023-06-01T16:10:43+00:00" + }, { "name": "laravel/serializable-closure", "version": "v1.3.0", @@ -1075,6 +1395,108 @@ ], "time": "2022-08-04T09:53:51+00:00" }, + { + "name": "nesbot/carbon", + "version": "2.67.0", + "source": { + "type": "git", + "url": "https://github.com/briannesbitt/Carbon.git", + "reference": "c1001b3bc75039b07f38a79db5237c4c529e04c8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/c1001b3bc75039b07f38a79db5237c4c529e04c8", + "reference": "c1001b3bc75039b07f38a79db5237c4c529e04c8", + "shasum": "" + }, + "require": { + "ext-json": "*", + "php": "^7.1.8 || ^8.0", + "symfony/polyfill-mbstring": "^1.0", + "symfony/polyfill-php80": "^1.16", + "symfony/translation": "^3.4 || ^4.0 || ^5.0 || ^6.0" + }, + "require-dev": { + "doctrine/dbal": "^2.0 || ^3.1.4", + "doctrine/orm": "^2.7", + "friendsofphp/php-cs-fixer": "^3.0", + "kylekatarnls/multi-tester": "^2.0", + "ondrejmirtes/better-reflection": "*", + "phpmd/phpmd": "^2.9", + "phpstan/extension-installer": "^1.0", + "phpstan/phpstan": "^0.12.99 || ^1.7.14", + "phpunit/php-file-iterator": "^2.0.5 || ^3.0.6", + "phpunit/phpunit": "^7.5.20 || ^8.5.26 || ^9.5.20", + "squizlabs/php_codesniffer": "^3.4" + }, + "bin": [ + "bin/carbon" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-3.x": "3.x-dev", + "dev-master": "2.x-dev" + }, + "laravel": { + "providers": [ + "Carbon\\Laravel\\ServiceProvider" + ] + }, + "phpstan": { + "includes": [ + "extension.neon" + ] + } + }, + "autoload": { + "psr-4": { + "Carbon\\": "src/Carbon/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Brian Nesbitt", + "email": "brian@nesbot.com", + "homepage": "https://markido.com" + }, + { + "name": "kylekatarnls", + "homepage": "https://github.com/kylekatarnls" + } + ], + "description": "An API extension for DateTime that supports 281 different languages.", + "homepage": "https://carbon.nesbot.com", + "keywords": [ + "date", + "datetime", + "time" + ], + "support": { + "docs": "https://carbon.nesbot.com/docs", + "issues": "https://github.com/briannesbitt/Carbon/issues", + "source": "https://github.com/briannesbitt/Carbon" + }, + "funding": [ + { + "url": "https://github.com/sponsors/kylekatarnls", + "type": "github" + }, + { + "url": "https://opencollective.com/Carbon#sponsor", + "type": "opencollective" + }, + { + "url": "https://tidelift.com/subscription/pkg/packagist-nesbot-carbon?utm_source=packagist-nesbot-carbon&utm_medium=referral&utm_campaign=readme", + "type": "tidelift" + } + ], + "time": "2023-05-25T22:09:47+00:00" + }, { "name": "nikic/fast-route", "version": "v1.3.0", @@ -1125,71 +1547,6 @@ }, "time": "2018-02-13T20:26:39+00:00" }, - { - "name": "opis/closure", - "version": "3.6.3", - "source": { - "type": "git", - "url": "https://github.com/opis/closure.git", - "reference": "3d81e4309d2a927abbe66df935f4bb60082805ad" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/opis/closure/zipball/3d81e4309d2a927abbe66df935f4bb60082805ad", - "reference": "3d81e4309d2a927abbe66df935f4bb60082805ad", - "shasum": "" - }, - "require": { - "php": "^5.4 || ^7.0 || ^8.0" - }, - "require-dev": { - "jeremeamia/superclosure": "^2.0", - "phpunit/phpunit": "^4.0 || ^5.0 || ^6.0 || ^7.0 || ^8.0 || ^9.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.6.x-dev" - } - }, - "autoload": { - "files": [ - "functions.php" - ], - "psr-4": { - "Opis\\Closure\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Marius Sarca", - "email": "marius.sarca@gmail.com" - }, - { - "name": "Sorin Sarca", - "email": "sarca_sorin@hotmail.com" - } - ], - "description": "A library that can be used to serialize closures (anonymous functions) and arbitrary objects.", - "homepage": "https://opis.io/closure", - "keywords": [ - "anonymous functions", - "closure", - "function", - "serializable", - "serialization", - "serialize" - ], - "support": { - "issues": "https://github.com/opis/closure/issues", - "source": "https://github.com/opis/closure/tree/3.6.3" - }, - "time": "2022-01-27T09:35:39+00:00" - }, { "name": "overtrue/pinyin", "version": "5.0.0", @@ -2071,6 +2428,182 @@ }, "time": "2019-03-08T08:55:37+00:00" }, + { + "name": "symfony/cache", + "version": "v5.4.23", + "source": { + "type": "git", + "url": "https://github.com/symfony/cache.git", + "reference": "983c79ff28612cdfd66d8e44e1a06e5afc87e107" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/cache/zipball/983c79ff28612cdfd66d8e44e1a06e5afc87e107", + "reference": "983c79ff28612cdfd66d8e44e1a06e5afc87e107", + "shasum": "" + }, + "require": { + "php": ">=7.2.5", + "psr/cache": "^1.0|^2.0", + "psr/log": "^1.1|^2|^3", + "symfony/cache-contracts": "^1.1.7|^2", + "symfony/deprecation-contracts": "^2.1|^3", + "symfony/polyfill-php73": "^1.9", + "symfony/polyfill-php80": "^1.16", + "symfony/service-contracts": "^1.1|^2|^3", + "symfony/var-exporter": "^4.4|^5.0|^6.0" + }, + "conflict": { + "doctrine/dbal": "<2.13.1", + "symfony/dependency-injection": "<4.4", + "symfony/http-kernel": "<4.4", + "symfony/var-dumper": "<4.4" + }, + "provide": { + "psr/cache-implementation": "1.0|2.0", + "psr/simple-cache-implementation": "1.0|2.0", + "symfony/cache-implementation": "1.0|2.0" + }, + "require-dev": { + "cache/integration-tests": "dev-master", + "doctrine/cache": "^1.6|^2.0", + "doctrine/dbal": "^2.13.1|^3.0", + "predis/predis": "^1.1", + "psr/simple-cache": "^1.0|^2.0", + "symfony/config": "^4.4|^5.0|^6.0", + "symfony/dependency-injection": "^4.4|^5.0|^6.0", + "symfony/filesystem": "^4.4|^5.0|^6.0", + "symfony/http-kernel": "^4.4|^5.0|^6.0", + "symfony/messenger": "^4.4|^5.0|^6.0", + "symfony/var-dumper": "^4.4|^5.0|^6.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Cache\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides extended PSR-6, PSR-16 (and tags) implementations", + "homepage": "https://symfony.com", + "keywords": [ + "caching", + "psr6" + ], + "support": { + "source": "https://github.com/symfony/cache/tree/v5.4.23" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2023-04-21T15:38:51+00:00" + }, + { + "name": "symfony/cache-contracts", + "version": "v2.5.2", + "source": { + "type": "git", + "url": "https://github.com/symfony/cache-contracts.git", + "reference": "64be4a7acb83b6f2bf6de9a02cee6dad41277ebc" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/cache-contracts/zipball/64be4a7acb83b6f2bf6de9a02cee6dad41277ebc", + "reference": "64be4a7acb83b6f2bf6de9a02cee6dad41277ebc", + "shasum": "" + }, + "require": { + "php": ">=7.2.5", + "psr/cache": "^1.0|^2.0|^3.0" + }, + "suggest": { + "symfony/cache-implementation": "" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "2.5-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Contracts\\Cache\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Generic abstractions related to caching", + "homepage": "https://symfony.com", + "keywords": [ + "abstractions", + "contracts", + "decoupling", + "interfaces", + "interoperability", + "standards" + ], + "support": { + "source": "https://github.com/symfony/cache-contracts/tree/v2.5.2" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-01-02T09:53:40+00:00" + }, { "name": "symfony/console", "version": "v6.0.19", @@ -2563,6 +3096,85 @@ ], "time": "2022-11-03T14:55:06+00:00" }, + { + "name": "symfony/polyfill-php73", + "version": "v1.27.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-php73.git", + "reference": "9e8ecb5f92152187c4799efd3c96b78ccab18ff9" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/9e8ecb5f92152187c4799efd3c96b78ccab18ff9", + "reference": "9e8ecb5f92152187c4799efd3c96b78ccab18ff9", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.27-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Php73\\": "" + }, + "classmap": [ + "Resources/stubs" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill backporting some PHP 7.3+ features to lower PHP versions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-php73/tree/v1.27.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-11-03T14:55:06+00:00" + }, { "name": "symfony/polyfill-php80", "version": "v1.27.0", @@ -2816,16 +3428,16 @@ }, { "name": "symfony/translation", - "version": "v5.4.22", + "version": "v5.4.24", "source": { "type": "git", "url": "https://github.com/symfony/translation.git", - "reference": "9a401392f01bc385aa42760eff481d213a0cc2ba" + "reference": "de237e59c5833422342be67402d487fbf50334ff" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation/zipball/9a401392f01bc385aa42760eff481d213a0cc2ba", - "reference": "9a401392f01bc385aa42760eff481d213a0cc2ba", + "url": "https://api.github.com/repos/symfony/translation/zipball/de237e59c5833422342be67402d487fbf50334ff", + "reference": "de237e59c5833422342be67402d487fbf50334ff", "shasum": "" }, "require": { @@ -2893,7 +3505,7 @@ "description": "Provides tools to internationalize your application", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/translation/tree/v5.4.22" + "source": "https://github.com/symfony/translation/tree/v5.4.24" }, "funding": [ { @@ -2909,7 +3521,7 @@ "type": "tidelift" } ], - "time": "2023-03-27T16:07:23+00:00" + "time": "2023-05-19T12:34:17+00:00" }, { "name": "symfony/translation-contracts", @@ -3078,49 +3690,76 @@ "time": "2023-01-20T17:44:14+00:00" }, { - "name": "topthink/think-cache", - "version": "v2.0.7", + "name": "symfony/var-exporter", + "version": "v6.0.19", "source": { "type": "git", - "url": "https://github.com/top-think/think-cache.git", - "reference": "7b6ace7eb9b569fe95000b254000bbafa3c7dfee" + "url": "https://github.com/symfony/var-exporter.git", + "reference": "df56f53818c2d5d9f683f4ad2e365ba73a3b69d2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/top-think/think-cache/zipball/7b6ace7eb9b569fe95000b254000bbafa3c7dfee", - "reference": "7b6ace7eb9b569fe95000b254000bbafa3c7dfee", + "url": "https://api.github.com/repos/symfony/var-exporter/zipball/df56f53818c2d5d9f683f4ad2e365ba73a3b69d2", + "reference": "df56f53818c2d5d9f683f4ad2e365ba73a3b69d2", "shasum": "" }, "require": { - "opis/closure": "^3.1", - "php": ">=7.1.0", - "psr/cache": "~1.0", - "psr/simple-cache": "^1.0", - "topthink/think-container": "~2.0" + "php": ">=8.0.2" + }, + "require-dev": { + "symfony/var-dumper": "^5.4|^6.0" }, "type": "library", "autoload": { - "files": [], "psr-4": { - "think\\": "src" - } + "Symfony\\Component\\VarExporter\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ - "Apache-2.0" + "MIT" ], "authors": [ { - "name": "liu21st", - "email": "liu21st@gmail.com" + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" } ], - "description": "Cache Manager", + "description": "Allows exporting any serializable PHP data structure to plain PHP code", + "homepage": "https://symfony.com", + "keywords": [ + "clone", + "construct", + "export", + "hydrate", + "instantiate", + "serialize" + ], "support": { - "issues": "https://github.com/top-think/think-cache/issues", - "source": "https://github.com/top-think/think-cache/tree/v2.0.7" + "source": "https://github.com/symfony/var-exporter/tree/v6.0.19" }, - "time": "2023-01-16T08:09:09+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2023-01-13T08:34:10+00:00" }, { "name": "topthink/think-container", @@ -3396,6 +4035,80 @@ }, "time": "2019-05-15T06:58:23+00:00" }, + { + "name": "voku/portable-ascii", + "version": "2.0.1", + "source": { + "type": "git", + "url": "https://github.com/voku/portable-ascii.git", + "reference": "b56450eed252f6801410d810c8e1727224ae0743" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/voku/portable-ascii/zipball/b56450eed252f6801410d810c8e1727224ae0743", + "reference": "b56450eed252f6801410d810c8e1727224ae0743", + "shasum": "" + }, + "require": { + "php": ">=7.0.0" + }, + "require-dev": { + "phpunit/phpunit": "~6.0 || ~7.0 || ~9.0" + }, + "suggest": { + "ext-intl": "Use Intl for transliterator_transliterate() support" + }, + "type": "library", + "autoload": { + "psr-4": { + "voku\\": "src/voku/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Lars Moelleken", + "homepage": "http://www.moelleken.org/" + } + ], + "description": "Portable ASCII library - performance optimized (ascii) string functions for php.", + "homepage": "https://github.com/voku/portable-ascii", + "keywords": [ + "ascii", + "clean", + "php" + ], + "support": { + "issues": "https://github.com/voku/portable-ascii/issues", + "source": "https://github.com/voku/portable-ascii/tree/2.0.1" + }, + "funding": [ + { + "url": "https://www.paypal.me/moelleken", + "type": "custom" + }, + { + "url": "https://github.com/voku", + "type": "github" + }, + { + "url": "https://opencollective.com/portable-ascii", + "type": "open_collective" + }, + { + "url": "https://www.patreon.com/voku", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/voku/portable-ascii", + "type": "tidelift" + } + ], + "time": "2022-03-08T17:03:00+00:00" + }, { "name": "webman/captcha", "version": "v1.0.2", @@ -3602,39 +4315,6 @@ }, "time": "2022-06-27T08:07:13+00:00" }, - { - "name": "webman/think-cache", - "version": "v1.0.2", - "source": { - "type": "git", - "url": "https://github.com/webman-php/think-cache.git", - "reference": "0420d03a564e3513b7578ec475c6699ec02cd081" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/webman-php/think-cache/zipball/0420d03a564e3513b7578ec475c6699ec02cd081", - "reference": "0420d03a564e3513b7578ec475c6699ec02cd081", - "shasum": "" - }, - "require": { - "topthink/think-cache": "^2.0.6" - }, - "type": "library", - "autoload": { - "psr-4": { - "Webman\\ThinkCache\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "support": { - "issues": "https://github.com/webman-php/think-cache/issues", - "source": "https://github.com/webman-php/think-cache/tree/v1.0.2" - }, - "time": "2023-01-12T07:25:39+00:00" - }, { "name": "webman/think-orm", "version": "v1.1.0", diff --git a/config/app.php b/config/app.php index c3bbc29..35dc298 100644 --- a/config/app.php +++ b/config/app.php @@ -38,7 +38,7 @@ return [ 'dispatch_success' => app_path() . '/admin/view/public/jumptpl.html', 'exception_tpl' => app_path() . '/admin/view/error/500.html', 'error_message' => '页面错误!请稍后再试~', - 'version' => 'v1.1.6', + 'version' => 'v1.1.7', 'cors_domain' => ['*', '127.0.0.1'], 'api_url' => 'https://api.swiftadmin.net/', 'show_error_msg' => false, diff --git a/config/bootstrap.php b/config/bootstrap.php index 6bcb734..97fee2c 100644 --- a/config/bootstrap.php +++ b/config/bootstrap.php @@ -12,9 +12,11 @@ * @license http://www.opensource.org/licenses/mit-license.php MIT License */ +use app\common\bootstrap\RedisCache; + return [ support\bootstrap\Session::class, support\bootstrap\LaravelDb::class, + RedisCache::class, // 缓存服务器 Webman\ThinkOrm\ThinkOrm::class, - Webman\ThinkCache\ThinkCache::class, ]; diff --git a/config/defineRoute.php b/config/defineRoute.php deleted file mode 100644 index 60c0351..0000000 --- a/config/defineRoute.php +++ /dev/null @@ -1,3 +0,0 @@ - true, + 'enable' => false, ]; \ No newline at end of file diff --git a/config/plugin/webman/redis-queue/app.php b/config/plugin/webman/redis-queue/app.php index 8f9c426..d41a5b2 100644 --- a/config/plugin/webman/redis-queue/app.php +++ b/config/plugin/webman/redis-queue/app.php @@ -1,4 +1,4 @@ true, + 'enable' => false, ]; \ No newline at end of file diff --git a/config/redis.php b/config/redis.php index 4510f7a..21e3dcd 100644 --- a/config/redis.php +++ b/config/redis.php @@ -14,9 +14,11 @@ return [ 'default' => [ - 'host' => '127.0.0.1', + 'host' => get_env('CACHE_HOSTNAME') ?? '127.0.0.1', 'password' => get_env('REDIS_PASSWORD'), - 'port' => 6379, - 'database' => 1, + 'port' => get_env('CACHE_HOSTPORT') ?? 6379, + 'database' => get_env('CACHE_SELECT') ?? 0, + 'prefix' => 'redis_', + 'expire' => 0, ], ]; diff --git a/config/route.php b/config/route.php index 1a4bb43..0e6401e 100644 --- a/config/route.php +++ b/config/route.php @@ -14,16 +14,6 @@ use Webman\Route; // 验证码路由 Route::any('/captcha', [app\BaseController::class, 'captcha']); -/** - * 加载自定义路由 [插件路由] - */ -$defineRoute = require __DIR__ . '/defineRoute.php'; -if ($defineRoute && is_array($defineRoute)) { - foreach ($defineRoute as $key => $value) { - Route::any($key, $value); - } -} - /** * 默认管理员路由 * @var string $manage @@ -76,4 +66,30 @@ Route::fallback(function ($request) { } return response(request_error(current($parseApp)), 404); -}); \ No newline at end of file +}); + +// 执行插件初始化 +$pluginList = get_plugin_list(); +foreach ($pluginList as $item) { + if (!$item['status']) { + continue; + } + foreach ($item['rewrite'] as $route => $value) { + $separator = explode('/', $value); + $method = end($separator); + array_pop($separator); + $filePath = implode('\\', $separator); + $controller = 'app\\index\\controller\\' . $filePath; + if (class_exists($controller) && method_exists($controller, $method)) { + try { + $classFullName = (new ReflectionClass($controller))->getName(); + Route::any($route, [$classFullName, $method]); + } catch (\Throwable $e) { + var_dump('error: ' . $e->getMessage()); + } + } else { + var_dump("\033[31m$controller or $method does not exist!\033[0m"); + } + } + +} \ No newline at end of file diff --git a/config/taglib.php b/config/taglib.php deleted file mode 100644 index 60c0351..0000000 --- a/config/taglib.php +++ /dev/null @@ -1,3 +0,0 @@ - get_env('CACHE_DRIVER') ?: 'file', - 'stores' => [ - 'file' => [ - 'type' => 'File', - // 缓存保存目录 - 'path' => runtime_path() . '/cache/', - // 缓存前缀 - 'prefix' => '', - // 缓存有效期 0表示永久缓存 - 'expire' => 0, - ], - 'redis' => [ - 'type' => 'redis', - 'host' => get_env('CACHE_HOSTNAME') ?: '127.0.0.1', - 'port' => get_env('CACHE_HOSTPORT') ?: 6379, - 'select' => get_env('CACHE_SELECT') ?: 0, - 'password' => get_env('CACHE_PASSWORD') ?: '', - 'prefix' => 'redis_', - 'expire' => 0, - ], - ], -]; \ No newline at end of file diff --git a/config/thinkorm.php b/config/thinkorm.php index db9e8de..13abbe7 100644 --- a/config/thinkorm.php +++ b/config/thinkorm.php @@ -25,7 +25,9 @@ return [ // 断线重连 'break_reconnect' => true, // 关闭SQL监听日志 - 'trigger_sql' => false, + 'trigger_sql' => true, + // 开启字段缓存 + 'fields_cache' => false, ], ], ]; \ No newline at end of file diff --git a/config/view.php b/config/view.php index e907505..56acdd0 100644 --- a/config/view.php +++ b/config/view.php @@ -23,7 +23,7 @@ return [ 'tpl_cache' => true, 'taglib_begin' => '<', 'taglib_end' => '>', - 'taglib_pre_load' => implode(',', array_merge(['app\common\taglib\SaLibs'],include __DIR__ . '/taglib.php')), + 'taglib_pre_load' => 'app\common\taglib\SaLibs', 'tpl_replace_string' => [ '__STATIC__' => '/static/', '__STATICJS__' => '/static/js/', diff --git a/public/static/css/center.css b/public/static/css/center.css index d2e80a0..f1ee62a 100644 --- a/public/static/css/center.css +++ b/public/static/css/center.css @@ -65,6 +65,11 @@ b.msg { color: #000; } +.layui-btn { + height: 33px!important; + line-height: 33px!important; +} + .layui-form-label { padding: 6px 15px; } diff --git a/public/static/css/style.css b/public/static/css/style.css index 71ec005..a9b8f4b 100644 --- a/public/static/css/style.css +++ b/public/static/css/style.css @@ -107,7 +107,7 @@ a { #header #login { right: 20px; left: unset; - width: 150px; + /*width: 150px;*/ } #header .nav-item a { diff --git a/public/static/js/common.js b/public/static/js/center.js similarity index 100% rename from public/static/js/common.js rename to public/static/js/center.js diff --git a/public/static/system/css/style.css b/public/static/system/css/style.css index fe693d3..7f1df10 100644 --- a/public/static/system/css/style.css +++ b/public/static/system/css/style.css @@ -409,7 +409,7 @@ a { } .layui-tree-iconClick .layui-icon { - font-size: 16px!important; + font-size: 14px!important; } .layui-tree-txt { @@ -1312,10 +1312,6 @@ a { right: 0 } -.layui-tree-subtraction .layui-form-checkbox[lay-skin=primary] i.layui-icon-ok:before { - content: "\e67e"; -} - .swiftadmin-tabs-select.layui-nav { position: absolute; left: 0; @@ -2233,22 +2229,18 @@ a { } .layui-form-onswitch { - height: 16px; - line-height: 16px; - min-width: 28px; - margin-top: 6px; background-color: #1890ff; border: 1px solid #1890ff; } .layui-form-switch i { - top: 2px; + top: 1px; width: 12px; height: 12px; } .layui-form-onswitch i { - margin-left: -18px; + margin-left: -16px; } /* 拖拽上传 */ @@ -2437,6 +2429,24 @@ a { .layui-table-view .layui-form-checkbox[lay-skin=primary] i { width: 16px; height: 16px; + line-height: 15px; +} + +.layui-form-checkbox[lay-skin="primary"] > .layui-icon-indeterminate { + border-color: #1890ff; + color: #fff; + background-color: #1890ff; +} + +.layui-form-checkbox[lay-skin="primary"] > .layui-icon-indeterminate:before { + content: ''; + display: inline-block; + vertical-align: middle; + position: relative; + width: 50%; + height: 1px; + margin: -1px auto 0; + background-color: #fff; } .layui-laypage .layui-laypage-curr .layui-laypage-em { diff --git a/public/static/system/js/common.js b/public/static/system/js/common.js index 44f0bee..71da34f 100644 --- a/public/static/system/js/common.js +++ b/public/static/system/js/common.js @@ -12,7 +12,6 @@ layui.config({ iconPicker: 'iconPicker/iconPicker', echarts: "echarts/echarts", xmselect: 'xmselect/xmselect', - treetable: 'treetable/treetable', tableSelect: 'tableSelect/tableSelect', formDesign: 'formDesign/formDesign', soulTable: 'soulTable/soulTable', diff --git a/public/static/system/layui/css/layui.css b/public/static/system/layui/css/layui.css index 24faef3..dd565dc 100644 --- a/public/static/system/layui/css/layui.css +++ b/public/static/system/layui/css/layui.css @@ -1 +1 @@ -blockquote,body,button,dd,div,dl,dt,form,h1,h2,h3,h4,h5,h6,input,li,ol,p,pre,td,textarea,th,ul{margin:0;padding:0;-webkit-tap-highlight-color:rgba(0,0,0,0)}a:active,a:hover{outline:0}img{display:inline-block;border:none;vertical-align:middle}li{list-style:none}table{border-collapse:collapse;border-spacing:0}h1,h2,h3{font-weight:400}h4,h5,h6{font-size:100%;font-weight:400}button,input,select,textarea{font-size:100%}button,input,optgroup,option,select,textarea{font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;outline:0}pre{white-space:pre-wrap;white-space:-moz-pre-wrap;white-space:-pre-wrap;white-space:-o-pre-wrap;word-wrap:break-word}body{line-height:1.6;color:#333;color:rgba(0,0,0,.85);font:14px Helvetica Neue,Helvetica,PingFang SC,Tahoma,Arial,sans-serif}hr{height:0;line-height:0;margin:10px 0;padding:0;border:none!important;border-bottom:1px solid #eee!important;clear:both;overflow:hidden;background:0 0}a{color:#333;text-decoration:none}a:hover{color:#777}a cite{font-style:normal;*cursor:pointer}.layui-border-box,.layui-border-box *{box-sizing:border-box}.layui-box,.layui-box *{box-sizing:content-box}.layui-clear{clear:both;*zoom:1}.layui-clear:after{content:'\20';clear:both;*zoom:1;display:block;height:0}.layui-inline{position:relative;display:inline-block;*display:inline;*zoom:1;vertical-align:middle}.layui-edge{position:relative;display:inline-block;vertical-align:middle;width:0;height:0;border-width:6px;border-style:dashed;border-color:transparent;overflow:hidden}.layui-edge-top{top:-4px;border-bottom-color:#999;border-bottom-style:solid}.layui-edge-right{border-left-color:#999;border-left-style:solid}.layui-edge-bottom{top:2px;border-top-color:#999;border-top-style:solid}.layui-edge-left{border-right-color:#999;border-right-style:solid}.layui-elip{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.layui-disabled,.layui-icon,.layui-unselect{-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.layui-disabled,.layui-disabled:hover{color:#d2d2d2!important;cursor:not-allowed!important}.layui-circle{border-radius:100%}.layui-show{display:block!important}.layui-hide{display:none!important}.layui-show-v{visibility:visible!important}.layui-hide-v{visibility:hidden!important}@font-face{font-family:layui-icon;src:url(../font/iconfont.eot?v=256);src:url(../font/iconfont.eot?v=256#iefix) format('embedded-opentype'),url(../font/iconfont.woff2?v=256) format('woff2'),url(../font/iconfont.woff?v=256) format('woff'),url(../font/iconfont.ttf?v=256) format('truetype'),url(../font/iconfont.svg?v=256#layui-icon) format('svg')}.layui-icon{font-family:layui-icon!important;font-size:16px;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.layui-icon-reply-fill:before{content:"\e611"}.layui-icon-set-fill:before{content:"\e614"}.layui-icon-menu-fill:before{content:"\e60f"}.layui-icon-search:before{content:"\e615"}.layui-icon-share:before{content:"\e641"}.layui-icon-set-sm:before{content:"\e620"}.layui-icon-engine:before{content:"\e628"}.layui-icon-close:before{content:"\1006"}.layui-icon-close-fill:before{content:"\1007"}.layui-icon-chart-screen:before{content:"\e629"}.layui-icon-star:before{content:"\e600"}.layui-icon-circle-dot:before{content:"\e617"}.layui-icon-chat:before{content:"\e606"}.layui-icon-release:before{content:"\e609"}.layui-icon-list:before{content:"\e60a"}.layui-icon-chart:before{content:"\e62c"}.layui-icon-ok-circle:before{content:"\1005"}.layui-icon-layim-theme:before{content:"\e61b"}.layui-icon-table:before{content:"\e62d"}.layui-icon-right:before{content:"\e602"}.layui-icon-left:before{content:"\e603"}.layui-icon-cart-simple:before{content:"\e698"}.layui-icon-face-cry:before{content:"\e69c"}.layui-icon-face-smile:before{content:"\e6af"}.layui-icon-survey:before{content:"\e6b2"}.layui-icon-tree:before{content:"\e62e"}.layui-icon-ie:before{content:"\e7bb"}.layui-icon-upload-circle:before{content:"\e62f"}.layui-icon-add-circle:before{content:"\e61f"}.layui-icon-download-circle:before{content:"\e601"}.layui-icon-templeate-1:before{content:"\e630"}.layui-icon-util:before{content:"\e631"}.layui-icon-face-surprised:before{content:"\e664"}.layui-icon-edit:before{content:"\e642"}.layui-icon-speaker:before{content:"\e645"}.layui-icon-down:before{content:"\e61a"}.layui-icon-file:before{content:"\e621"}.layui-icon-layouts:before{content:"\e632"}.layui-icon-rate-half:before{content:"\e6c9"}.layui-icon-add-circle-fine:before{content:"\e608"}.layui-icon-prev-circle:before{content:"\e633"}.layui-icon-read:before{content:"\e705"}.layui-icon-404:before{content:"\e61c"}.layui-icon-carousel:before{content:"\e634"}.layui-icon-help:before{content:"\e607"}.layui-icon-code-circle:before{content:"\e635"}.layui-icon-windows:before{content:"\e67f"}.layui-icon-water:before{content:"\e636"}.layui-icon-username:before{content:"\e66f"}.layui-icon-find-fill:before{content:"\e670"}.layui-icon-about:before{content:"\e60b"}.layui-icon-location:before{content:"\e715"}.layui-icon-up:before{content:"\e619"}.layui-icon-pause:before{content:"\e651"}.layui-icon-date:before{content:"\e637"}.layui-icon-layim-uploadfile:before{content:"\e61d"}.layui-icon-delete:before{content:"\e640"}.layui-icon-play:before{content:"\e652"}.layui-icon-top:before{content:"\e604"}.layui-icon-firefox:before{content:"\e686"}.layui-icon-friends:before{content:"\e612"}.layui-icon-refresh-3:before{content:"\e9aa"}.layui-icon-ok:before{content:"\e605"}.layui-icon-layer:before{content:"\e638"}.layui-icon-face-smile-fine:before{content:"\e60c"}.layui-icon-dollar:before{content:"\e659"}.layui-icon-group:before{content:"\e613"}.layui-icon-layim-download:before{content:"\e61e"}.layui-icon-picture-fine:before{content:"\e60d"}.layui-icon-link:before{content:"\e64c"}.layui-icon-diamond:before{content:"\e735"}.layui-icon-log:before{content:"\e60e"}.layui-icon-key:before{content:"\e683"}.layui-icon-rate-solid:before{content:"\e67a"}.layui-icon-fonts-del:before{content:"\e64f"}.layui-icon-unlink:before{content:"\e64d"}.layui-icon-fonts-clear:before{content:"\e639"}.layui-icon-triangle-r:before{content:"\e623"}.layui-icon-circle:before{content:"\e63f"}.layui-icon-radio:before{content:"\e643"}.layui-icon-align-center:before{content:"\e647"}.layui-icon-align-right:before{content:"\e648"}.layui-icon-align-left:before{content:"\e649"}.layui-icon-loading-1:before{content:"\e63e"}.layui-icon-return:before{content:"\e65c"}.layui-icon-fonts-strong:before{content:"\e62b"}.layui-icon-upload:before{content:"\e67c"}.layui-icon-dialogue:before{content:"\e63a"}.layui-icon-video:before{content:"\e6ed"}.layui-icon-headset:before{content:"\e6fc"}.layui-icon-cellphone-fine:before{content:"\e63b"}.layui-icon-add-1:before{content:"\e654"}.layui-icon-face-smile-b:before{content:"\e650"}.layui-icon-fonts-html:before{content:"\e64b"}.layui-icon-screen-full:before{content:"\e622"}.layui-icon-form:before{content:"\e63c"}.layui-icon-cart:before{content:"\e657"}.layui-icon-camera-fill:before{content:"\e65d"}.layui-icon-tabs:before{content:"\e62a"}.layui-icon-heart-fill:before{content:"\e68f"}.layui-icon-fonts-code:before{content:"\e64e"}.layui-icon-ios:before{content:"\e680"}.layui-icon-at:before{content:"\e687"}.layui-icon-fire:before{content:"\e756"}.layui-icon-set:before{content:"\e716"}.layui-icon-fonts-u:before{content:"\e646"}.layui-icon-triangle-d:before{content:"\e625"}.layui-icon-tips:before{content:"\e702"}.layui-icon-picture:before{content:"\e64a"}.layui-icon-more-vertical:before{content:"\e671"}.layui-icon-bluetooth:before{content:"\e689"}.layui-icon-flag:before{content:"\e66c"}.layui-icon-loading:before{content:"\e63d"}.layui-icon-fonts-i:before{content:"\e644"}.layui-icon-refresh-1:before{content:"\e666"}.layui-icon-rmb:before{content:"\e65e"}.layui-icon-addition:before{content:"\e624"}.layui-icon-home:before{content:"\e68e"}.layui-icon-time:before{content:"\e68d"}.layui-icon-user:before{content:"\e770"}.layui-icon-notice:before{content:"\e667"}.layui-icon-chrome:before{content:"\e68a"}.layui-icon-edge:before{content:"\e68b"}.layui-icon-login-weibo:before{content:"\e675"}.layui-icon-voice:before{content:"\e688"}.layui-icon-upload-drag:before{content:"\e681"}.layui-icon-login-qq:before{content:"\e676"}.layui-icon-snowflake:before{content:"\e6b1"}.layui-icon-heart:before{content:"\e68c"}.layui-icon-logout:before{content:"\e682"}.layui-icon-file-b:before{content:"\e655"}.layui-icon-template:before{content:"\e663"}.layui-icon-transfer:before{content:"\e691"}.layui-icon-auz:before{content:"\e672"}.layui-icon-console:before{content:"\e665"}.layui-icon-app:before{content:"\e653"}.layui-icon-prev:before{content:"\e65a"}.layui-icon-website:before{content:"\e7ae"}.layui-icon-next:before{content:"\e65b"}.layui-icon-component:before{content:"\e857"}.layui-icon-android:before{content:"\e684"}.layui-icon-more:before{content:"\e65f"}.layui-icon-login-wechat:before{content:"\e677"}.layui-icon-shrink-right:before{content:"\e668"}.layui-icon-spread-left:before{content:"\e66b"}.layui-icon-camera:before{content:"\e660"}.layui-icon-note:before{content:"\e66e"}.layui-icon-refresh:before{content:"\e669"}.layui-icon-female:before{content:"\e661"}.layui-icon-male:before{content:"\e662"}.layui-icon-screen-restore:before{content:"\e758"}.layui-icon-password:before{content:"\e673"}.layui-icon-senior:before{content:"\e674"}.layui-icon-theme:before{content:"\e66a"}.layui-icon-tread:before{content:"\e6c5"}.layui-icon-praise:before{content:"\e6c6"}.layui-icon-star-fill:before{content:"\e658"}.layui-icon-rate:before{content:"\e67b"}.layui-icon-template-1:before{content:"\e656"}.layui-icon-vercode:before{content:"\e679"}.layui-icon-service:before{content:"\e626"}.layui-icon-cellphone:before{content:"\e678"}.layui-icon-print:before{content:"\e66d"}.layui-icon-cols:before{content:"\e610"}.layui-icon-wifi:before{content:"\e7e0"}.layui-icon-export:before{content:"\e67d"}.layui-icon-rss:before{content:"\e808"}.layui-icon-slider:before{content:"\e714"}.layui-icon-email:before{content:"\e618"}.layui-icon-subtraction:before{content:"\e67e"}.layui-icon-mike:before{content:"\e6dc"}.layui-icon-light:before{content:"\e748"}.layui-icon-gift:before{content:"\e627"}.layui-icon-mute:before{content:"\e685"}.layui-icon-reduce-circle:before{content:"\e616"}.layui-icon-music:before{content:"\e690"}.layui-main{position:relative;width:1160px;margin:0 auto}.layui-header{position:relative;z-index:1000;height:60px}.layui-header a:hover{transition:all .5s;-webkit-transition:all .5s}.layui-side{position:fixed;left:0;top:0;bottom:0;z-index:999;width:200px;overflow-x:hidden}.layui-side-scroll{position:relative;width:220px;height:100%;overflow-x:hidden}.layui-body{position:relative;left:200px;right:0;top:0;bottom:0;z-index:900;width:auto;box-sizing:border-box}.layui-layout-body{overflow-x:hidden}.layui-layout-admin .layui-header{position:fixed;top:0;left:0;right:0;background-color:#23262e}.layui-layout-admin .layui-side{top:60px;width:200px;overflow-x:hidden}.layui-layout-admin .layui-body{position:absolute;top:60px;padding-bottom:44px}.layui-layout-admin .layui-main{width:auto;margin:0 15px}.layui-layout-admin .layui-footer{position:fixed;left:200px;right:0;bottom:0;z-index:990;height:44px;line-height:44px;padding:0 15px;box-shadow:-1px 0 4px rgb(0 0 0 / 12%);background-color:#fafafa}.layui-layout-admin .layui-logo{position:absolute;left:0;top:0;width:200px;height:100%;line-height:60px;text-align:center;color:#009688;font-size:16px;box-shadow:0 1px 2px 0 rgb(0 0 0 / 15%)}.layui-layout-admin .layui-header .layui-nav{background:0 0}.layui-layout-left{position:absolute!important;left:200px;top:0}.layui-layout-right{position:absolute!important;right:0;top:0}.layui-container{position:relative;margin:0 auto;box-sizing:border-box}.layui-fluid{position:relative;margin:0 auto;padding:0 15px}.layui-row:after,.layui-row:before{content:"";display:block;clear:both}.layui-col-lg1,.layui-col-lg10,.layui-col-lg11,.layui-col-lg12,.layui-col-lg2,.layui-col-lg3,.layui-col-lg4,.layui-col-lg5,.layui-col-lg6,.layui-col-lg7,.layui-col-lg8,.layui-col-lg9,.layui-col-md1,.layui-col-md10,.layui-col-md11,.layui-col-md12,.layui-col-md2,.layui-col-md3,.layui-col-md4,.layui-col-md5,.layui-col-md6,.layui-col-md7,.layui-col-md8,.layui-col-md9,.layui-col-sm1,.layui-col-sm10,.layui-col-sm11,.layui-col-sm12,.layui-col-sm2,.layui-col-sm3,.layui-col-sm4,.layui-col-sm5,.layui-col-sm6,.layui-col-sm7,.layui-col-sm8,.layui-col-sm9,.layui-col-xs1,.layui-col-xs10,.layui-col-xs11,.layui-col-xs12,.layui-col-xs2,.layui-col-xs3,.layui-col-xs4,.layui-col-xs5,.layui-col-xs6,.layui-col-xs7,.layui-col-xs8,.layui-col-xs9{position:relative;display:block;box-sizing:border-box}.layui-col-xs1,.layui-col-xs10,.layui-col-xs11,.layui-col-xs12,.layui-col-xs2,.layui-col-xs3,.layui-col-xs4,.layui-col-xs5,.layui-col-xs6,.layui-col-xs7,.layui-col-xs8,.layui-col-xs9{float:left}.layui-col-xs1{width:8.33333333%}.layui-col-xs2{width:16.66666667%}.layui-col-xs3{width:25%}.layui-col-xs4{width:33.33333333%}.layui-col-xs5{width:41.66666667%}.layui-col-xs6{width:50%}.layui-col-xs7{width:58.33333333%}.layui-col-xs8{width:66.66666667%}.layui-col-xs9{width:75%}.layui-col-xs10{width:83.33333333%}.layui-col-xs11{width:91.66666667%}.layui-col-xs12{width:100%}.layui-col-xs-offset1{margin-left:8.33333333%}.layui-col-xs-offset2{margin-left:16.66666667%}.layui-col-xs-offset3{margin-left:25%}.layui-col-xs-offset4{margin-left:33.33333333%}.layui-col-xs-offset5{margin-left:41.66666667%}.layui-col-xs-offset6{margin-left:50%}.layui-col-xs-offset7{margin-left:58.33333333%}.layui-col-xs-offset8{margin-left:66.66666667%}.layui-col-xs-offset9{margin-left:75%}.layui-col-xs-offset10{margin-left:83.33333333%}.layui-col-xs-offset11{margin-left:91.66666667%}.layui-col-xs-offset12{margin-left:100%}@media screen and (max-width:767.98px){.layui-container{padding:0 15px}.layui-hide-xs{display:none!important}.layui-show-xs-block{display:block!important}.layui-show-xs-inline{display:inline!important}.layui-show-xs-inline-block{display:inline-block!important}}@media screen and (min-width:768px){.layui-container{width:720px}.layui-hide-sm{display:none!important}.layui-show-sm-block{display:block!important}.layui-show-sm-inline{display:inline!important}.layui-show-sm-inline-block{display:inline-block!important}.layui-col-sm1,.layui-col-sm10,.layui-col-sm11,.layui-col-sm12,.layui-col-sm2,.layui-col-sm3,.layui-col-sm4,.layui-col-sm5,.layui-col-sm6,.layui-col-sm7,.layui-col-sm8,.layui-col-sm9{float:left}.layui-col-sm1{width:8.33333333%}.layui-col-sm2{width:16.66666667%}.layui-col-sm3{width:25%}.layui-col-sm4{width:33.33333333%}.layui-col-sm5{width:41.66666667%}.layui-col-sm6{width:50%}.layui-col-sm7{width:58.33333333%}.layui-col-sm8{width:66.66666667%}.layui-col-sm9{width:75%}.layui-col-sm10{width:83.33333333%}.layui-col-sm11{width:91.66666667%}.layui-col-sm12{width:100%}.layui-col-sm-offset1{margin-left:8.33333333%}.layui-col-sm-offset2{margin-left:16.66666667%}.layui-col-sm-offset3{margin-left:25%}.layui-col-sm-offset4{margin-left:33.33333333%}.layui-col-sm-offset5{margin-left:41.66666667%}.layui-col-sm-offset6{margin-left:50%}.layui-col-sm-offset7{margin-left:58.33333333%}.layui-col-sm-offset8{margin-left:66.66666667%}.layui-col-sm-offset9{margin-left:75%}.layui-col-sm-offset10{margin-left:83.33333333%}.layui-col-sm-offset11{margin-left:91.66666667%}.layui-col-sm-offset12{margin-left:100%}}@media screen and (min-width:992px){.layui-container{width:960px}.layui-hide-md{display:none!important}.layui-show-md-block{display:block!important}.layui-show-md-inline{display:inline!important}.layui-show-md-inline-block{display:inline-block!important}.layui-col-md1,.layui-col-md10,.layui-col-md11,.layui-col-md12,.layui-col-md2,.layui-col-md3,.layui-col-md4,.layui-col-md5,.layui-col-md6,.layui-col-md7,.layui-col-md8,.layui-col-md9{float:left}.layui-col-md1{width:8.33333333%}.layui-col-md2{width:16.66666667%}.layui-col-md3{width:25%}.layui-col-md4{width:33.33333333%}.layui-col-md5{width:41.66666667%}.layui-col-md6{width:50%}.layui-col-md7{width:58.33333333%}.layui-col-md8{width:66.66666667%}.layui-col-md9{width:75%}.layui-col-md10{width:83.33333333%}.layui-col-md11{width:91.66666667%}.layui-col-md12{width:100%}.layui-col-md-offset1{margin-left:8.33333333%}.layui-col-md-offset2{margin-left:16.66666667%}.layui-col-md-offset3{margin-left:25%}.layui-col-md-offset4{margin-left:33.33333333%}.layui-col-md-offset5{margin-left:41.66666667%}.layui-col-md-offset6{margin-left:50%}.layui-col-md-offset7{margin-left:58.33333333%}.layui-col-md-offset8{margin-left:66.66666667%}.layui-col-md-offset9{margin-left:75%}.layui-col-md-offset10{margin-left:83.33333333%}.layui-col-md-offset11{margin-left:91.66666667%}.layui-col-md-offset12{margin-left:100%}}@media screen and (min-width:1200px){.layui-container{width:1150px}.layui-hide-lg{display:none!important}.layui-show-lg-block{display:block!important}.layui-show-lg-inline{display:inline!important}.layui-show-lg-inline-block{display:inline-block!important}.layui-col-lg1,.layui-col-lg10,.layui-col-lg11,.layui-col-lg12,.layui-col-lg2,.layui-col-lg3,.layui-col-lg4,.layui-col-lg5,.layui-col-lg6,.layui-col-lg7,.layui-col-lg8,.layui-col-lg9{float:left}.layui-col-lg1{width:8.33333333%}.layui-col-lg2{width:16.66666667%}.layui-col-lg3{width:25%}.layui-col-lg4{width:33.33333333%}.layui-col-lg5{width:41.66666667%}.layui-col-lg6{width:50%}.layui-col-lg7{width:58.33333333%}.layui-col-lg8{width:66.66666667%}.layui-col-lg9{width:75%}.layui-col-lg10{width:83.33333333%}.layui-col-lg11{width:91.66666667%}.layui-col-lg12{width:100%}.layui-col-lg-offset1{margin-left:8.33333333%}.layui-col-lg-offset2{margin-left:16.66666667%}.layui-col-lg-offset3{margin-left:25%}.layui-col-lg-offset4{margin-left:33.33333333%}.layui-col-lg-offset5{margin-left:41.66666667%}.layui-col-lg-offset6{margin-left:50%}.layui-col-lg-offset7{margin-left:58.33333333%}.layui-col-lg-offset8{margin-left:66.66666667%}.layui-col-lg-offset9{margin-left:75%}.layui-col-lg-offset10{margin-left:83.33333333%}.layui-col-lg-offset11{margin-left:91.66666667%}.layui-col-lg-offset12{margin-left:100%}}.layui-col-space1{margin:-.5px}.layui-col-space1>*{padding:.5px}.layui-col-space2{margin:-1px}.layui-col-space2>*{padding:1px}.layui-col-space4{margin:-2px}.layui-col-space4>*{padding:2px}.layui-col-space5{margin:-2.5px}.layui-col-space5>*{padding:2.5px}.layui-col-space6{margin:-3px}.layui-col-space6>*{padding:3px}.layui-col-space8{margin:-4px}.layui-col-space8>*{padding:4px}.layui-col-space10{margin:-5px}.layui-col-space10>*{padding:5px}.layui-col-space12{margin:-6px}.layui-col-space12>*{padding:6px}.layui-col-space14{margin:-7px}.layui-col-space14>*{padding:7px}.layui-col-space15{margin:-7.5px}.layui-col-space15>*{padding:7.5px}.layui-col-space16{margin:-8px}.layui-col-space16>*{padding:8px}.layui-col-space18{margin:-9px}.layui-col-space18>*{padding:9px}.layui-col-space20{margin:-10px}.layui-col-space20>*{padding:10px}.layui-col-space22{margin:-11px}.layui-col-space22>*{padding:11px}.layui-col-space24{margin:-12px}.layui-col-space24>*{padding:12px}.layui-col-space25{margin:-12.5px}.layui-col-space25>*{padding:12.5px}.layui-col-space26{margin:-13px}.layui-col-space26>*{padding:13px}.layui-col-space28{margin:-14px}.layui-col-space28>*{padding:14px}.layui-col-space30{margin:-15px}.layui-col-space30>*{padding:15px}.layui-btn,.layui-input,.layui-select,.layui-textarea,.layui-upload-button{outline:0;-webkit-appearance:none;transition:all .3s;-webkit-transition:all .3s;box-sizing:border-box}.layui-elem-quote{margin-bottom:10px;padding:15px;line-height:1.6;border-left:5px solid #5fb878;border-radius:0 2px 2px 0;background-color:#fafafa}.layui-quote-nm{border-style:solid;border-width:1px;border-left-width:5px;background:0 0}.layui-elem-field{margin-bottom:10px;padding:0;border-width:1px;border-style:solid}.layui-elem-field legend{margin-left:20px;padding:0 10px;font-size:20px;font-weight:300}.layui-field-title{margin:10px 0 20px;border-width:0;border-top-width:1px}.layui-field-box{padding:15px}.layui-field-title .layui-field-box{padding:10px 0}.layui-progress{position:relative;height:6px;border-radius:20px;background-color:#eee}.layui-progress-bar{position:absolute;left:0;top:0;width:0;max-width:100%;height:6px;border-radius:20px;text-align:right;background-color:#5fb878;transition:all .3s;-webkit-transition:all .3s}.layui-progress-big,.layui-progress-big .layui-progress-bar{height:18px;line-height:18px}.layui-progress-text{position:relative;top:-20px;line-height:18px;font-size:12px;color:#5f5f5f}.layui-progress-big .layui-progress-text{position:static;padding:0 10px;color:#fff}.layui-collapse{border-width:1px;border-style:solid;border-radius:2px}.layui-colla-content,.layui-colla-item{border-top-width:1px;border-top-style:solid}.layui-colla-item:first-child{border-top:none}.layui-colla-title{position:relative;height:42px;line-height:42px;padding:0 15px 0 35px;color:#333;background-color:#fafafa;cursor:pointer;font-size:14px;overflow:hidden}.layui-colla-content{display:none;padding:10px 15px;line-height:1.6;color:#5f5f5f}.layui-colla-icon{position:absolute;left:15px;top:0;font-size:14px}.layui-card{margin-bottom:15px;border-radius:2px;background-color:#fff;box-shadow:0 1px 2px 0 rgba(0,0,0,.05)}.layui-card:last-child{margin-bottom:0}.layui-card-header{position:relative;height:42px;line-height:42px;padding:0 15px;border-bottom:1px solid #f6f6f6;color:#333;border-radius:2px 2px 0 0;font-size:14px}.layui-card-body{position:relative;padding:10px 15px;line-height:24px}.layui-card-body[pad15]{padding:15px}.layui-card-body[pad20]{padding:20px}.layui-card-body .layui-table{margin:5px 0}.layui-card .layui-tab{margin:0}.layui-panel{position:relative;border-width:1px;border-style:solid;border-radius:2px;box-shadow:1px 1px 4px rgb(0 0 0 / 8%);background-color:#fff;color:#5f5f5f}.layui-panel-window{position:relative;padding:15px;border-radius:0;border-top:5px solid #eee;background-color:#fff}.layui-auxiliar-moving{position:fixed;left:0;right:0;top:0;bottom:0;width:100%;height:100%;background:0 0;z-index:9999999999}.layui-bg-red{background-color:#ff5722!important;color:#fff!important}.layui-bg-orange{background-color:#ffb800!important;color:#fff!important}.layui-bg-green{background-color:#009688!important;color:#fff!important}.layui-bg-cyan{background-color:#2f4056!important;color:#fff!important}.layui-bg-blue{background-color:#1e9fff!important;color:#fff!important}.layui-bg-black{background-color:#393d49!important;color:#fff!important}.layui-bg-gray{background-color:#fafafa!important;color:#5f5f5f!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:#eee}.layui-border{border-width:1px;border-style:solid;color:#5f5f5f!important}.layui-border-red{border-width:1px;border-style:solid;border-color:#ff5722!important;color:#ff5722!important}.layui-border-orange{border-width:1px;border-style:solid;border-color:#ffb800!important;color:#ffb800!important}.layui-border-green{border-width:1px;border-style:solid;border-color:#009688!important;color:#009688!important}.layui-border-cyan{border-width:1px;border-style:solid;border-color:#2f4056!important;color:#2f4056!important}.layui-border-blue{border-width:1px;border-style:solid;border-color:#1e9fff!important;color:#1e9fff!important}.layui-border-black{border-width:1px;border-style:solid;border-color:#393d49!important;color:#393d49!important}.layui-timeline-item:before{background-color:#eee}.layui-text{line-height:1.6;font-size:14px;color:#5f5f5f}.layui-text h1,.layui-text h2,.layui-text h3,.layui-text h4,.layui-text h5,.layui-text h6{font-weight:500;color:#333}.layui-text h1{font-size:32px}.layui-text h2{font-size:24px}.layui-text h3{font-size:18px}.layui-text h4{font-size:16px}.layui-text h5{font-size:14px}.layui-text h6{font-size:13px}.layui-text a:not(.layui-btn){color:#01aaed}.layui-text a:not(.layui-btn):hover{text-decoration:underline}.layui-text ol,.layui-text ul{padding:5px 0 5px 15px}.layui-text ul li{margin-top:5px;list-style-type:disc}.layui-text ol li{margin-top:5px;list-style-type:decimal}.layui-text em,.layui-word-aux{color:#999!important;padding-left:5px!important;padding-right:5px!important}.layui-text p{margin:15px 0}.layui-text p:first-child{margin-top:0}.layui-text p:last-child{margin-bottom:0}.layui-text blockquote:not(.layui-elem-quote){padding:5px 15px;border-left:5px solid #eee}.layui-text pre:not(.layui-code){padding:15px;font-family:Lucida Console,Consolas,Courier New;background-color:#fafafa}.layui-font-12{font-size:12px!important}.layui-font-14{font-size:14px!important}.layui-font-16{font-size:16px!important}.layui-font-18{font-size:18px!important}.layui-font-20{font-size:20px!important}.layui-font-red{color:#ff5722!important}.layui-font-orange{color:#ffb800!important}.layui-font-green{color:#009688!important}.layui-font-cyan{color:#2f4056!important}.layui-font-blue{color:#01aaed!important}.layui-font-black{color:#000!important}.layui-font-gray{color:#c2c2c2!important}.layui-btn{display:inline-block;vertical-align:middle;height:38px;line-height:38px;border:1px solid transparent;padding:0 18px;background-color:#009688;color:#fff;white-space:nowrap;text-align:center;font-size:14px;border-radius:2px;cursor:pointer;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.layui-btn:hover{opacity:.8;filter:alpha(opacity=80);color:#fff}.layui-btn:active{opacity:1;filter:alpha(opacity=100)}.layui-btn+.layui-btn{margin-left:10px}.layui-btn-container{font-size:0}.layui-btn-container .layui-btn{margin-right:10px;margin-bottom:10px}.layui-btn-container .layui-btn+.layui-btn{margin-left:0}.layui-table .layui-btn-container .layui-btn{margin-bottom:9px}.layui-btn-radius{border-radius:100px}.layui-btn .layui-icon{padding:0 2px;vertical-align:middle\0;vertical-align:bottom}.layui-btn-primary{border-color:#d2d2d2;background:0 0;color:#5f5f5f}.layui-btn-primary:hover{border-color:#009688;color:#333}.layui-btn-normal{background-color:#1e9fff}.layui-btn-warm{background-color:#ffb800}.layui-btn-danger{background-color:#ff5722}.layui-btn-checked{background-color:#5fb878}.layui-btn-disabled,.layui-btn-disabled:active,.layui-btn-disabled:hover{border-color:#eee!important;background-color:#fbfbfb!important;color:#d2d2d2!important;cursor:not-allowed!important;opacity:1}.layui-btn-lg{height:44px;line-height:44px;padding:0 25px;font-size:16px}.layui-btn-sm{height:30px;line-height:30px;padding:0 10px;font-size:12px}.layui-btn-xs{height:22px;line-height:22px;padding:0 5px;font-size:12px}.layui-btn-xs i{font-size:12px!important}.layui-btn-group{display:inline-block;vertical-align:middle;font-size:0}.layui-btn-group .layui-btn{margin-left:0!important;margin-right:0!important;border-left:1px solid rgba(255,255,255,.5);border-radius:0}.layui-btn-group .layui-btn-primary{border-left:none}.layui-btn-group .layui-btn-primary:hover{border-color:#d2d2d2;color:#009688}.layui-btn-group .layui-btn:first-child{border-left:none;border-radius:2px 0 0 2px}.layui-btn-group .layui-btn-primary:first-child{border-left:1px solid #d2d2d2}.layui-btn-group .layui-btn:last-child{border-radius:0 2px 2px 0}.layui-btn-group .layui-btn+.layui-btn{margin-left:0}.layui-btn-group+.layui-btn-group{margin-left:10px}.layui-btn-fluid{width:100%}.layui-input,.layui-select,.layui-textarea{height:38px;line-height:1.3;line-height:38px\9;border-width:1px;border-style:solid;background-color:#fff;color:rgba(0,0,0,.85);border-radius:2px}.layui-input::-webkit-input-placeholder,.layui-select::-webkit-input-placeholder,.layui-textarea::-webkit-input-placeholder{line-height:1.3}.layui-input,.layui-textarea{display:block;width:100%;padding-left:10px}.layui-input:hover,.layui-textarea:hover{border-color:#eee!important}.layui-input:focus,.layui-textarea:focus{border-color:#d2d2d2!important}.layui-textarea{position:relative;min-height:100px;height:auto;line-height:20px;padding:6px 10px;resize:vertical}.layui-select{padding:0 10px}.layui-form input[type=checkbox],.layui-form input[type=radio],.layui-form select{display:none}.layui-form [lay-ignore]{display:initial}.layui-form-item{margin-bottom:15px;clear:both;*zoom:1}.layui-form-item:after{content:'\20';clear:both;*zoom:1;display:block;height:0}.layui-form-label{position:relative;float:left;display:block;padding:9px 15px;width:80px;font-weight:400;line-height:20px;text-align:right}.layui-form-label-col{display:block;float:none;padding:9px 0;line-height:20px;text-align:left}.layui-form-item .layui-inline{margin-bottom:5px;margin-right:10px}.layui-input-block,.layui-input-inline{position:relative}.layui-input-block{margin-left:110px;min-height:36px}.layui-input-inline{display:inline-block;vertical-align:middle}.layui-form-item .layui-input-inline{float:left;width:190px;margin-right:10px}.layui-form-text .layui-input-inline{width:auto}.layui-form-mid{position:relative;float:left;display:block;padding:9px 0!important;line-height:20px;margin-right:10px}.layui-form-danger+.layui-form-select .layui-input,.layui-form-danger:focus{border-color:#ff5722!important}.layui-form-select{position:relative}.layui-form-select .layui-input{padding-right:30px;cursor:pointer}.layui-form-select .layui-edge{position:absolute;right:10px;top:50%;margin-top:-3px;cursor:pointer;border-width:6px;border-top-color:#c2c2c2;border-top-style:solid;transition:all .3s;-webkit-transition:all .3s}.layui-form-select dl{display:none;position:absolute;left:0;top:42px;padding:5px 0;z-index:899;min-width:100%;border:1px solid #eee;max-height:300px;overflow-y:auto;background-color:#fff;border-radius:2px;box-shadow:1px 1px 4px rgb(0 0 0 / 8%);box-sizing:border-box}.layui-form-select dl dd,.layui-form-select dl dt{padding:0 10px;line-height:36px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.layui-form-select dl dt{font-size:12px;color:#999}.layui-form-select dl dd{cursor:pointer}.layui-form-select dl dd:hover{background-color:#f6f6f6;-webkit-transition:.5s all;transition:.5s all}.layui-form-select .layui-select-group dd{padding-left:20px}.layui-form-select dl dd.layui-select-tips{padding-left:10px!important;color:#999}.layui-form-select dl dd.layui-this{background-color:#5fb878;color:#fff}.layui-form-select dl dd.layui-disabled{background-color:#fff}.layui-form-selected dl{display:block}.layui-form-selected .layui-edge{margin-top:-9px;-webkit-transform:rotate(180deg);transform:rotate(180deg)}.layui-form-selected .layui-edge{margin-top:-3px\0}:root .layui-form-selected .layui-edge{margin-top:-9px\0/IE9}.layui-form-selectup dl{top:auto;bottom:42px}.layui-select-none{margin:5px 0;text-align:center;color:#999}.layui-select-disabled .layui-disabled{border-color:#eee!important}.layui-select-disabled .layui-edge{border-top-color:#d2d2d2}.layui-form-checkbox{position:relative;display:inline-block;vertical-align:middle;height:30px;line-height:30px;margin-right:10px;padding-right:30px;background-color:#fff;cursor:pointer;font-size:0;-webkit-transition:.1s linear;transition:.1s linear;box-sizing:border-box}.layui-form-checkbox *{display:inline-block;vertical-align:middle}.layui-form-checkbox span{padding:0 10px;height:100%;font-size:14px;border-radius:2px 0 0 2px;background-color:#d2d2d2;color:#fff;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.layui-form-checkbox:hover span{background-color:#c2c2c2}.layui-form-checkbox i{position:absolute;right:0;top:0;width:30px;height:28px;border:1px solid #d2d2d2;border-left:none;border-radius:0 2px 2px 0;color:#fff;font-size:20px;text-align:center}.layui-form-checkbox:hover i{border-color:#c2c2c2;color:#c2c2c2}.layui-form-checked,.layui-form-checked:hover{border-color:#5fb878}.layui-form-checked span,.layui-form-checked:hover span{background-color:#5fb878}.layui-form-checked i,.layui-form-checked:hover i{color:#5fb878}.layui-form-item .layui-form-checkbox{margin-top:4px}.layui-form-checkbox[lay-skin=primary]{height:auto!important;line-height:normal!important;min-width:18px;min-height:18px;border:none!important;margin-right:0;padding-left:28px;padding-right:0;background:0 0}.layui-form-checkbox[lay-skin=primary] span{padding-left:0;padding-right:15px;line-height:18px;background:0 0;color:#5f5f5f}.layui-form-checkbox[lay-skin=primary] i{right:auto;left:0;width:16px;height:16px;line-height:16px;border:1px solid #d2d2d2;font-size:12px;border-radius:2px;background-color:#fff;-webkit-transition:.1s linear;transition:.1s linear}.layui-form-checkbox[lay-skin=primary]:hover i{border-color:#5fb878;color:#fff}.layui-form-checked[lay-skin=primary] i{border-color:#5fb878!important;background-color:#5fb878;color:#fff}.layui-checkbox-disabled[lay-skin=primary] span{background:0 0!important;color:#c2c2c2!important}.layui-form-checked.layui-checkbox-disabled[lay-skin=primary] i{background:#eee!important;border-color:#eee!important}.layui-checkbox-disabled[lay-skin=primary]:hover i{border-color:#d2d2d2}.layui-form-item .layui-form-checkbox[lay-skin=primary]{margin-top:10px}.layui-form-switch{position:relative;display:inline-block;vertical-align:middle;height:22px;line-height:22px;min-width:35px;padding:0 5px;margin-top:8px;border:1px solid #d2d2d2;border-radius:20px;cursor:pointer;background-color:#fff;-webkit-transition:.1s linear;transition:.1s linear}.layui-form-switch i{position:absolute;left:5px;top:3px;width:16px;height:16px;border-radius:20px;background-color:#d2d2d2;-webkit-transition:.1s linear;transition:.1s linear}.layui-form-switch em{position:relative;top:0;width:25px;margin-left:21px;padding:0!important;text-align:center!important;color:#999!important;font-style:normal!important;font-size:12px}.layui-form-onswitch{border-color:#5fb878;background-color:#5fb878}.layui-form-onswitch i{left:100%;margin-left:-21px;background-color:#fff}.layui-form-onswitch em{margin-left:5px;margin-right:21px;color:#fff!important}.layui-checkbox-disabled{border-color:#eee!important}.layui-checkbox-disabled span{background-color:#eee!important}.layui-checkbox-disabled i{border-color:#eee!important}.layui-checkbox-disabled em{color:#d2d2d2!important}.layui-checkbox-disabled:hover i{color:#fff!important}[lay-radio]{display:none}.layui-form-radio{display:inline-block;vertical-align:middle;line-height:28px;margin:6px 10px 0 0;padding-right:10px;cursor:pointer;font-size:0}.layui-form-radio *{display:inline-block;vertical-align:middle;font-size:14px}.layui-form-radio>i{margin-right:8px;font-size:22px;color:#c2c2c2}.layui-form-radio:hover *,.layui-form-radioed,.layui-form-radioed>i{color:#5fb878}.layui-radio-disabled>i{color:#eee!important}.layui-radio-disabled *{color:#c2c2c2!important}.layui-form-pane .layui-form-label{width:110px;padding:8px 15px;height:38px;line-height:20px;border-width:1px;border-style:solid;border-radius:2px 0 0 2px;text-align:center;background-color:#fafafa;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;box-sizing:border-box}.layui-form-pane .layui-input-inline{margin-left:-1px}.layui-form-pane .layui-input-block{margin-left:110px;left:-1px}.layui-form-pane .layui-input{border-radius:0 2px 2px 0}.layui-form-pane .layui-form-text .layui-form-label{float:none;width:100%;border-radius:2px;box-sizing:border-box;text-align:left}.layui-form-pane .layui-form-text .layui-input-inline{display:block;margin:0;top:-1px;clear:both}.layui-form-pane .layui-form-text .layui-input-block{margin:0;left:0;top:-1px}.layui-form-pane .layui-form-text .layui-textarea{min-height:100px;border-radius:0 0 2px 2px}.layui-form-pane .layui-form-checkbox{margin:4px 0 4px 10px}.layui-form-pane .layui-form-radio,.layui-form-pane .layui-form-switch{margin-top:6px;margin-left:10px}.layui-form-pane .layui-form-item[pane]{position:relative;border-width:1px;border-style:solid}.layui-form-pane .layui-form-item[pane] .layui-form-label{position:absolute;left:0;top:0;height:100%;border-width:0;border-right-width:1px}.layui-form-pane .layui-form-item[pane] .layui-input-inline{margin-left:110px}@media screen and (max-width:450px){.layui-form-item .layui-form-label{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.layui-form-item .layui-inline{display:block;margin-right:0;margin-bottom:20px;clear:both}.layui-form-item .layui-inline:after{content:'\20';clear:both;display:block;height:0}.layui-form-item .layui-input-inline{display:block;float:none;left:-3px;width:auto!important;margin:0 0 10px 112px}.layui-form-item .layui-input-inline+.layui-form-mid{margin-left:110px;top:-5px;padding:0}.layui-form-item .layui-form-checkbox{margin-right:5px;margin-bottom:5px}}.layui-layedit{border-width:1px;border-style:solid;border-radius:2px}.layui-layedit-tool{padding:3px 5px;border-bottom-width:1px;border-bottom-style:solid;font-size:0}.layedit-tool-fixed{position:fixed;top:0;border-top:1px solid #eee}.layui-layedit-tool .layedit-tool-mid,.layui-layedit-tool .layui-icon{display:inline-block;vertical-align:middle;text-align:center;font-size:14px}.layui-layedit-tool .layui-icon{position:relative;width:32px;height:30px;line-height:30px;margin:3px 5px;border-radius:2px;color:#777;cursor:pointer;border-radius:2px}.layui-layedit-tool .layui-icon:hover{color:#393d49}.layui-layedit-tool .layui-icon:active{color:#000}.layui-layedit-tool .layedit-tool-active{background-color:#eee;color:#000}.layui-layedit-tool .layui-disabled,.layui-layedit-tool .layui-disabled:hover{color:#d2d2d2;cursor:not-allowed}.layui-layedit-tool .layedit-tool-mid{width:1px;height:18px;margin:0 10px;background-color:#d2d2d2}.layedit-tool-html{width:50px!important;font-size:30px!important}.layedit-tool-b,.layedit-tool-code,.layedit-tool-help{font-size:16px!important}.layedit-tool-d,.layedit-tool-face,.layedit-tool-image,.layedit-tool-unlink{font-size:18px!important}.layedit-tool-image input{position:absolute;font-size:0;left:0;top:0;width:100%;height:100%;opacity:.01;filter:Alpha(opacity=1);cursor:pointer}.layui-layedit-iframe iframe{display:block;width:100%}#LAY_layedit_code{overflow:hidden}.layui-laypage{display:inline-block;*display:inline;*zoom:1;vertical-align:middle;margin:10px 0;font-size:0}.layui-laypage>a:first-child,.layui-laypage>a:first-child em{border-radius:2px 0 0 2px}.layui-laypage>a:last-child,.layui-laypage>a:last-child em{border-radius:0 2px 2px 0}.layui-laypage>:first-child{margin-left:0!important}.layui-laypage>:last-child{margin-right:0!important}.layui-laypage a,.layui-laypage button,.layui-laypage input,.layui-laypage select,.layui-laypage span{border:1px solid #eee}.layui-laypage a,.layui-laypage span{display:inline-block;*display:inline;*zoom:1;vertical-align:middle;padding:0 15px;height:28px;line-height:28px;margin:0 -1px 5px 0;background-color:#fff;color:#333;font-size:12px}.layui-laypage a:hover{color:#009688}.layui-laypage em{font-style:normal}.layui-laypage .layui-laypage-spr{color:#999;font-weight:700}.layui-laypage a{text-decoration:none}.layui-laypage .layui-laypage-curr{position:relative}.layui-laypage .layui-laypage-curr em{position:relative;color:#fff}.layui-laypage .layui-laypage-curr .layui-laypage-em{position:absolute;left:-1px;top:-1px;padding:1px;width:100%;height:100%;background-color:#009688}.layui-laypage-em{border-radius:2px}.layui-laypage-next em,.layui-laypage-prev em{font-family:Sim sun;font-size:16px}.layui-laypage .layui-laypage-count,.layui-laypage .layui-laypage-limits,.layui-laypage .layui-laypage-refresh,.layui-laypage .layui-laypage-skip{margin-left:10px;margin-right:10px;padding:0;border:none}.layui-laypage .layui-laypage-limits,.layui-laypage .layui-laypage-refresh{vertical-align:top}.layui-laypage .layui-laypage-refresh i{font-size:18px;cursor:pointer}.layui-laypage select{height:22px;padding:3px;border-radius:2px;cursor:pointer}.layui-laypage .layui-laypage-skip{height:30px;line-height:30px;color:#999}.layui-laypage button,.layui-laypage input{height:30px;line-height:30px;border-radius:2px;vertical-align:top;background-color:#fff;box-sizing:border-box}.layui-laypage input{display:inline-block;width:40px;margin:0 10px;padding:0 3px;text-align:center}.layui-laypage input:focus,.layui-laypage select:focus{border-color:#009688!important}.layui-laypage button{margin-left:10px;padding:0 10px;cursor:pointer}.layui-flow-more{margin:10px 0;text-align:center;color:#999;font-size:14px}.layui-flow-more a{height:32px;line-height:32px}.layui-flow-more a *{display:inline-block;vertical-align:top}.layui-flow-more a cite{padding:0 20px;border-radius:3px;background-color:#eee;color:#333;font-style:normal}.layui-flow-more a cite:hover{opacity:.8}.layui-flow-more a i{font-size:30px;color:#737383}.layui-table{width:100%;margin:10px 0;background-color:#fff;color:#5f5f5f}.layui-table tr{transition:all .3s;-webkit-transition:all .3s}.layui-table th{text-align:left;font-weight:400}.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:#fafafa}.layui-table[lay-even] tr:nth-child(even){background-color:#f2f2f2}.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-width:1px;border-style:solid;border-color:#eee}.layui-table td,.layui-table th{position:relative;padding:9px 15px;min-height:20px;line-height:20px;font-size:14px}.layui-table[lay-skin=line] td,.layui-table[lay-skin=line] th{border-width:0;border-bottom-width:1px}.layui-table[lay-skin=row] td,.layui-table[lay-skin=row] th{border-width:0;border-right-width:1px}.layui-table[lay-skin=nob] td,.layui-table[lay-skin=nob] th{border:none}.layui-table img{max-width:100px}.layui-table[lay-size=lg] td,.layui-table[lay-size=lg] th{padding-top:15px;padding-right:30px;padding-bottom:15px;padding-left:30px}.layui-table-view .layui-table[lay-size=lg] .layui-table-cell{height:50px;line-height:40px}.layui-table[lay-size=sm] td,.layui-table[lay-size=sm] th{padding-top:5px;padding-right:10px;padding-bottom:5px;padding-left:10px;font-size:12px}.layui-table-view .layui-table[lay-size=sm] .layui-table-cell{height:30px;line-height:20px;padding-top:5px;padding-right:5px}.layui-table[lay-data]{display:none}.layui-table-box{position:relative;overflow:hidden}.layui-table-view{margin:10px 0}.layui-table-view .layui-table{position:relative;width:auto;margin:0;border:0;border-collapse:separate}.layui-table-view .layui-table[lay-skin=line]{border-width:0;border-right-width:1px}.layui-table-view .layui-table[lay-skin=row]{border-width:0;border-bottom-width:1px}.layui-table-view .layui-table td,.layui-table-view .layui-table th{padding:0;border-top:none;border-left:none}.layui-table-view .layui-table th.layui-unselect .layui-table-cell span{cursor:pointer}.layui-table-view .layui-table td{cursor:default}.layui-table-view .layui-table td[data-edit=text]{cursor:text}.layui-table-view .layui-form-checkbox[lay-skin=primary] i{width:18px;height:18px}.layui-table-view .layui-form-radio{line-height:0;padding:0}.layui-table-view .layui-form-radio>i{margin:0;font-size:20px}.layui-table-init{position:absolute;left:0;top:0;width:100%;height:100%;text-align:center;z-index:110}.layui-table-init .layui-icon{position:absolute;left:50%;top:50%;margin:-15px 0 0 -15px;font-size:30px;color:#c2c2c2}.layui-table-header{border-width:0;border-bottom-width:1px;overflow:hidden}.layui-table-header .layui-table{margin-bottom:-1px}.layui-table-column{position:relative;width:100%;min-height:41px;padding:8px 16px;border-width:0;border-bottom-width:1px}.layui-table-column .layui-btn-container{margin-bottom:-8px}.layui-table-column .layui-btn-container .layui-btn{margin-right:8px;margin-bottom:8px}.layui-table-tool .layui-inline[lay-event]{position:relative;width:26px;height:26px;padding:5px;line-height:16px;margin-right:10px;text-align:center;color:#333;border:1px solid #ccc;cursor:pointer;-webkit-transition:.5s all;transition:.5s all}.layui-table-tool .layui-inline[lay-event]:hover{border:1px solid #999}.layui-table-tool-temp{padding-right:120px}.layui-table-tool-self{position:absolute;right:17px;top:10px}.layui-table-tool .layui-table-tool-self .layui-inline[lay-event]{margin:0 0 0 10px}.layui-table-tool-panel{position:absolute;top:29px;left:-1px;padding:5px 0;min-width:150px;min-height:40px;border:1px solid #d2d2d2;text-align:left;overflow-y:auto;background-color:#fff;box-shadow:0 2px 4px rgba(0,0,0,.12)}.layui-table-tool-panel li{padding:0 10px;line-height:30px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-transition:.5s all;transition:.5s all}.layui-table-tool-panel li .layui-form-checkbox[lay-skin=primary]{width:100%}.layui-table-tool-panel li:hover{background-color:#f6f6f6}.layui-table-tool-panel li .layui-form-checkbox[lay-skin=primary]{padding-left:28px}.layui-table-tool-panel li .layui-form-checkbox[lay-skin=primary] i{position:absolute;left:0;top:0}.layui-table-tool-panel li .layui-form-checkbox[lay-skin=primary] span{padding:0}.layui-table-tool .layui-table-tool-self .layui-table-tool-panel{left:auto;right:-1px}.layui-table-col-set{position:absolute;right:0;top:0;width:20px;height:100%;border-width:0;border-left-width:1px;background-color:#fff}.layui-table-sort{width:10px;height:20px;margin-left:5px;cursor:pointer!important}.layui-table-sort .layui-edge{position:absolute;left:5px;border-width:5px}.layui-table-sort .layui-table-sort-asc{top:3px;border-top:none;border-bottom-style:solid;border-bottom-color:#b2b2b2}.layui-table-sort .layui-table-sort-asc:hover{border-bottom-color:#5f5f5f}.layui-table-sort .layui-table-sort-desc{bottom:5px;border-bottom:none;border-top-style:solid;border-top-color:#b2b2b2}.layui-table-sort .layui-table-sort-desc:hover{border-top-color:#5f5f5f}.layui-table-sort[lay-sort=asc] .layui-table-sort-asc{border-bottom-color:#000}.layui-table-sort[lay-sort=desc] .layui-table-sort-desc{border-top-color:#000}.layui-table-cell{height:38px;line-height:28px;padding:6px 15px;position:relative;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;box-sizing:border-box}.layui-table-cell .layui-form-checkbox[lay-skin=primary]{top:-1px;padding:0}.layui-table-cell .layui-table-link{color:#01aaed}.layui-table-cell .layui-btn{vertical-align:inherit}.layui-table-cell[align=center]{-webkit-box-pack:center}.layui-table-cell[align=right]{-webkit-box-pack:end}.laytable-cell-checkbox,.laytable-cell-numbers,.laytable-cell-radio,.laytable-cell-space{text-align:center;-webkit-box-pack:center}.layui-table-body{position:relative;overflow:auto;margin-right:-1px;margin-bottom:-1px}.layui-table-body .layui-none{line-height:26px;padding:30px 15px;text-align:center;color:#999}.layui-table-fixed{position:absolute;left:0;top:0;z-index:101}.layui-table-fixed .layui-table-body{overflow:hidden}.layui-table-fixed-l{box-shadow:1px 0 8px rgba(0,0,0,.08)}.layui-table-fixed-r{left:auto;right:-1px;border-width:0;border-left-width:1px;box-shadow:-1px 0 8px rgba(0,0,0,.08)}.layui-table-fixed-r .layui-table-header{position:relative;overflow:visible}.layui-table-mend{position:absolute;right:-49px;top:0;height:100%;width:50px}.layui-table-tool{position:relative;z-index:890;width:100%;min-height:50px;line-height:30px;padding:10px 15px;border-width:0;border-bottom-width:1px}.layui-table-tool .layui-btn-container{margin-bottom:-10px}.layui-table-total{margin-bottom:-1px;border-width:0;border-top-width:1px;overflow:hidden}.layui-table-page{z-index:880;border-width:0;border-top-width:1px;margin-bottom:-1px;white-space:nowrap;overflow:hidden}.layui-table-page>div{height:26px}.layui-table-page .layui-laypage{margin:0}.layui-table-page .layui-laypage a,.layui-table-page .layui-laypage span{height:26px;line-height:26px;margin-bottom:10px;border:none;background:0 0}.layui-table-page .layui-laypage a,.layui-table-page .layui-laypage span.layui-laypage-curr{padding:0 12px}.layui-table-page .layui-laypage span{margin-left:0;padding:0}.layui-table-page .layui-laypage .layui-laypage-prev{margin-left:-11px!important}.layui-table-page .layui-laypage .layui-laypage-curr .layui-laypage-em{left:0;top:0;padding:0}.layui-table-page .layui-laypage button,.layui-table-page .layui-laypage input{height:26px;line-height:26px}.layui-table-page .layui-laypage input{width:40px}.layui-table-page .layui-laypage button{padding:0 10px}.layui-table-page select{height:18px}.layui-table-pagebar{float:right;line-height:23px}.layui-table-pagebar .layui-btn-sm{margin-top:-1px}.layui-table-pagebar .layui-btn-xs{margin-top:2px}.layui-table-view select[lay-ignore]{display:inline-block}.layui-table-patch .layui-table-cell{padding:0;width:30px}.layui-table-edit{position:absolute;left:0;top:0;z-index:900;min-width:100%;min-height:100%;padding:5px 14px;border-radius:0;box-shadow:1px 1px 20px rgba(0,0,0,.15);background-color:#fff}.layui-table-edit:focus{border-color:#5fb878!important}input.layui-input.layui-table-edit{height:100%}select.layui-table-edit{padding:0 0 0 10px;border-color:#d2d2d2}.layui-table-view .layui-form-checkbox,.layui-table-view .layui-form-radio,.layui-table-view .layui-form-switch{top:0;margin:0;box-sizing:content-box}.layui-table-view .layui-form-checkbox{top:-1px;height:26px;line-height:26px}.layui-table-view .layui-form-checkbox i{height:26px}.layui-table-grid .layui-table-cell{overflow:visible}.layui-table-grid-down{position:absolute;top:0;right:0;width:26px;height:100%;padding:5px 0;border-width:0;border-left-width:1px;text-align:center;background-color:#fff;color:#999;cursor:pointer}.layui-table-grid-down .layui-icon{position:absolute;top:50%;left:50%;margin:-8px 0 0 -8px}.layui-table-grid-down:hover{background-color:#fbfbfb}body .layui-table-tips .layui-layer-content{background:0 0;padding:0;box-shadow:0 1px 6px rgba(0,0,0,.12)}.layui-table-tips-main{margin:-49px 0 0 -1px;max-height:150px;padding:8px 15px;font-size:14px;overflow-y:scroll;background-color:#fff;color:#5f5f5f}.layui-table-tips-c{position:absolute;right:-3px;top:-13px;width:20px;height:20px;padding:3px;cursor:pointer;background-color:#5f5f5f;border-radius:50%;color:#fff}.layui-table-tips-c:hover{background-color:#777}.layui-table-tips-c:before{position:relative;right:-2px}.layui-upload-file{display:none!important;opacity:.01;filter:Alpha(opacity=1)}.layui-upload-list{margin:10px 0}.layui-upload-choose{max-width:200px;padding:0 10px;color:#999;font-size:14px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.layui-upload-drag{position:relative;display:inline-block;padding:30px;border:1px dashed #e2e2e2;background-color:#fff;text-align:center;cursor:pointer;color:#999}.layui-upload-drag .layui-icon{font-size:50px;color:#009688}.layui-upload-drag[lay-over]{border-color:#009688}.layui-upload-form{display:inline-block}.layui-upload-iframe{position:absolute;width:0;height:0;border:0;visibility:hidden}.layui-upload-wrap{position:relative;display:inline-block;vertical-align:middle}.layui-upload-wrap .layui-upload-file{display:block!important;position:absolute;left:0;top:0;z-index:10;font-size:100px;width:100%;height:100%;opacity:.01;filter:Alpha(opacity=1);cursor:pointer}.layui-btn-container .layui-upload-choose{padding-left:0}.layui-menu{position:relative;margin:5px 0;background-color:#fff;box-sizing:border-box}.layui-menu *{box-sizing:border-box}.layui-menu li,.layui-menu-body-title a{padding:5px 15px}.layui-menu li{position:relative;margin:1px 0;width:calc(100% + 1px);line-height:26px;color:rgba(0,0,0,.8);font-size:14px;white-space:nowrap;cursor:pointer;transition:all .3s}.layui-menu li:hover{background-color:#f6f6f6}.layui-menu-item-parent:hover>.layui-menu-body-panel{display:block;animation-name:layui-fadein;animation-duration:.3s;animation-fill-mode:both;animation-delay:.2s}.layui-menu-item-group .layui-menu-body-title,.layui-menu-item-parent .layui-menu-body-title{padding-right:25px}.layui-menu .layui-menu-item-divider:hover,.layui-menu .layui-menu-item-group:hover,.layui-menu .layui-menu-item-none:hover{background:0 0;cursor:default}.layui-menu .layui-menu-item-group>ul{margin:5px 0 -5px}.layui-menu .layui-menu-item-group>.layui-menu-body-title{color:rgba(0,0,0,.35);user-select:none}.layui-menu .layui-menu-item-none{color:rgba(0,0,0,.35);cursor:default}.layui-menu .layui-menu-item-none{text-align:center}.layui-menu .layui-menu-item-divider{margin:5px 0;padding:0;height:0;line-height:0;border-bottom:1px solid #eee;overflow:hidden}.layui-menu .layui-menu-item-down:hover,.layui-menu .layui-menu-item-up:hover{cursor:pointer}.layui-menu .layui-menu-item-up>.layui-menu-body-title{color:rgba(0,0,0,.8)}.layui-menu .layui-menu-item-up>ul{visibility:hidden;height:0;overflow:hidden}.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:#000}.layui-menu .layui-menu-item-down>ul{visibility:visible;height:auto}.layui-menu .layui-menu-item-checked,.layui-menu .layui-menu-item-checked2{background-color:#f6f6f6!important;color:#5fb878}.layui-menu .layui-menu-item-checked a,.layui-menu .layui-menu-item-checked2 a{color:#5fb878}.layui-menu .layui-menu-item-checked:after{position:absolute;right:0;top:0;bottom:0;border-right:3px solid #5fb878;content:""}.layui-menu-body-title{position:relative;overflow:hidden;text-overflow:ellipsis}.layui-menu-body-title a{display:block;margin:-5px -15px;color:rgba(0,0,0,.8)}.layui-menu-body-title a:hover{transition:all .3s}.layui-menu-body-title>.layui-icon{position:absolute;right:0;top:0;font-size:14px}.layui-menu-body-title>.layui-icon:hover{transition:all .3s}.layui-menu-body-title>.layui-icon-right{right:-1px}.layui-menu-body-panel{display:none;position:absolute;top:-7px;left:100%;z-index:1000;margin-left:13px;padding:5px 0}.layui-menu-body-panel:before{content:"";position:absolute;width:20px;left:-16px;top:0;bottom:0}.layui-menu-body-panel-left{left:auto;right:100%;margin:0 13px 0}.layui-menu-body-panel-left:before{left:auto;right:-16px}.layui-menu-lg li{line-height:32px}.layui-menu-lg .layui-menu-body-title a:hover,.layui-menu-lg li:hover{background:0 0;color:#5fb878}.layui-menu-lg li .layui-menu-body-panel{margin-left:14px}.layui-menu-lg li .layui-menu-body-panel-left{margin:0 15px 0}.layui-dropdown{position:absolute;left:-999999px;top:-999999px;z-index:77777777;margin:5px 0;min-width:100px}.layui-dropdown:before{content:"";position:absolute;width:100%;height:6px;left:0;top:-6px}.layui-nav{position:relative;padding:0 20px;background-color:#393d49;color:#fff;border-radius:2px;font-size:0;box-sizing:border-box}.layui-nav *{font-size:14px}.layui-nav .layui-nav-item{position:relative;display:inline-block;*display:inline;*zoom:1;vertical-align:middle;line-height:60px}.layui-nav .layui-nav-item a{display:block;padding:0 20px;color:#fff;color:rgba(255,255,255,.7);transition:all .3s;-webkit-transition:all .3s}.layui-nav .layui-this:after,.layui-nav-bar{content:"";position:absolute;left:0;top:0;width:0;height:5px;background-color:#5fb878;transition:all .2s;-webkit-transition:all .2s;pointer-events:none}.layui-nav-bar{z-index:1000}.layui-nav[lay-bar=disabled] .layui-nav-bar{display:none}.layui-nav .layui-nav-item a:hover,.layui-nav .layui-this a{color:#fff}.layui-nav .layui-this:after{top:auto;bottom:0;width:100%}.layui-nav-img{width:30px;height:30px;margin-right:10px;border-radius:50%}.layui-nav .layui-nav-more{position:absolute;top:0;right:3px;left:auto!important;margin-top:0;font-size:12px;cursor:pointer;transition:all .2s;-webkit-transition:all .2s}.layui-nav .layui-nav-mored,.layui-nav-itemed>a .layui-nav-more{transform:rotate(180deg)}.layui-nav-child{display:none;position:absolute;left:0;top:65px;min-width:100%;line-height:36px;padding:5px 0;box-shadow:0 2px 4px rgba(0,0,0,.12);border:1px solid #eee;background-color:#fff;z-index:100;border-radius:2px;white-space:nowrap}.layui-nav .layui-nav-child a{color:#5f5f5f;color:rgba(0,0,0,.8)}.layui-nav .layui-nav-child a:hover{background-color:#f6f6f6;color:rgba(0,0,0,.8)}.layui-nav-child dd{margin:1px 0;position:relative}.layui-nav-child dd.layui-this{background-color:#f6f6f6;color:#000}.layui-nav-child dd.layui-this:after{display:none}.layui-nav-child-r{left:auto;right:0}.layui-nav-child-c{text-align:center}.layui-nav-tree{width:200px;padding:0}.layui-nav-tree .layui-nav-item{display:block;width:100%;line-height:40px}.layui-nav-tree .layui-nav-item a{position:relative;height:40px;line-height:40px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.layui-nav-tree .layui-nav-item>a{padding-top:5px;padding-bottom:5px}.layui-nav-tree .layui-nav-more{right:15px}.layui-nav-tree .layui-nav-item>a .layui-nav-more{padding:5px 0}.layui-nav-tree .layui-nav-bar{width:5px;height:0}.layui-side .layui-nav-tree .layui-nav-bar{width:2px}.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:#009688;color:#fff}.layui-nav-tree .layui-this:after{display:none}.layui-nav-itemed>a,.layui-nav-tree .layui-nav-title a,.layui-nav-tree .layui-nav-title a:hover{color:#fff!important}.layui-nav-tree .layui-nav-bar{background-color:#009688}.layui-nav-tree .layui-nav-child{position:relative;z-index:0;top:0;border:none;box-shadow:none}.layui-nav-tree .layui-nav-child dd{margin:0}.layui-nav-tree .layui-nav-child a{color:#fff;color:rgba(255,255,255,.7)}.layui-nav-tree .layui-nav-child,.layui-nav-tree .layui-nav-child a:hover{background:0 0;color:#fff}.layui-nav-itemed>.layui-nav-child{display:block;background-color:rgba(0,0,0,.3)!important}.layui-nav-itemed>.layui-nav-child>.layui-this>.layui-nav-child{display:block}.layui-nav-side{position:fixed;top:0;bottom:0;left:0;overflow-x:hidden;z-index:999}.layui-breadcrumb{visibility:hidden;font-size:0}.layui-breadcrumb>*{font-size:14px}.layui-breadcrumb a{color:#999!important}.layui-breadcrumb a:hover{color:#5fb878!important}.layui-breadcrumb a cite{color:#5f5f5f;font-style:normal}.layui-breadcrumb span[lay-separator]{margin:0 10px;color:#999}.layui-tab{margin:10px 0;text-align:left!important}.layui-tab[overflow]>.layui-tab-title{overflow:hidden}.layui-tab-title{position:relative;left:0;height:40px;white-space:nowrap;font-size:0;border-bottom-width:1px;border-bottom-style:solid;transition:all .2s;-webkit-transition:all .2s}.layui-tab-title li{display:inline-block;*display:inline;*zoom:1;vertical-align:middle;font-size:14px;transition:all .2s;-webkit-transition:all .2s}.layui-tab-title li{position:relative;line-height:40px;min-width:65px;padding:0 15px;text-align:center;cursor:pointer}.layui-tab-title li a{display:block;padding:0 15px;margin:0 -15px}.layui-tab-title .layui-this{color:#000}.layui-tab-title .layui-this:after{position:absolute;left:0;top:0;content:"";width:100%;height:41px;border-width:1px;border-style:solid;border-bottom-color:#fff;border-radius:2px 2px 0 0;box-sizing:border-box;pointer-events:none}.layui-tab-bar{position:absolute;right:0;top:0;z-index:10;width:30px;height:39px;line-height:39px;border-width:1px;border-style:solid;border-radius:2px;text-align:center;background-color:#fff;cursor:pointer}.layui-tab-bar .layui-icon{position:relative;display:inline-block;top:3px;transition:all .3s;-webkit-transition:all .3s}.layui-tab-item{display:none}.layui-tab-more{padding-right:30px;height:auto!important;white-space:normal!important}.layui-tab-more li.layui-this:after{border-bottom-color:#eee;border-radius:2px}.layui-tab-more .layui-tab-bar .layui-icon{top:-2px;top:3px\0;-webkit-transform:rotate(180deg);transform:rotate(180deg)}:root .layui-tab-more .layui-tab-bar .layui-icon{top:-2px\0/IE9}.layui-tab-content{padding:15px 0}.layui-tab-title li .layui-tab-close{position:relative;display:inline-block;width:18px;height:18px;line-height:20px;margin-left:8px;top:1px;text-align:center;font-size:14px;color:#c2c2c2;transition:all .2s;-webkit-transition:all .2s}.layui-tab-title li .layui-tab-close:hover{border-radius:2px;background-color:#ff5722;color:#fff}.layui-tab-brief>.layui-tab-title .layui-this{color:#009688}.layui-tab-brief>.layui-tab-more li.layui-this:after,.layui-tab-brief>.layui-tab-title .layui-this:after{border:none;border-radius:0;border-bottom:2px solid #5fb878}.layui-tab-brief[overflow]>.layui-tab-title .layui-this:after{top:-1px}.layui-tab-card{border-width:1px;border-style:solid;border-radius:2px;box-shadow:0 2px 5px 0 rgba(0,0,0,.1)}.layui-tab-card>.layui-tab-title{background-color:#fafafa}.layui-tab-card>.layui-tab-title li{margin-right:-1px;margin-left:-1px}.layui-tab-card>.layui-tab-title .layui-this{background-color:#fff}.layui-tab-card>.layui-tab-title .layui-this:after{border-top:none;border-width:1px;border-bottom-color:#fff}.layui-tab-card>.layui-tab-title .layui-tab-bar{height:40px;line-height:40px;border-radius:0;border-top:none;border-right:none}.layui-tab-card>.layui-tab-more .layui-this{background:0 0;color:#5fb878}.layui-tab-card>.layui-tab-more .layui-this:after{border:none}.layui-timeline{padding-left:5px}.layui-timeline-item{position:relative;padding-bottom:20px}.layui-timeline-axis{position:absolute;left:-5px;top:0;z-index:10;width:20px;height:20px;line-height:20px;background-color:#fff;color:#5fb878;border-radius:50%;text-align:center;cursor:pointer}.layui-timeline-axis:hover{color:#ff5722}.layui-timeline-item:before{content:"";position:absolute;left:5px;top:0;z-index:0;width:1px;height:100%}.layui-timeline-item:first-child:before{display:block}.layui-timeline-item:last-child:before{display:none}.layui-timeline-content{padding-left:25px}.layui-timeline-title{position:relative;margin-bottom:10px;line-height:22px}.layui-badge,.layui-badge-dot,.layui-badge-rim{position:relative;display:inline-block;padding:0 6px;font-size:12px;text-align:center;background-color:#ff5722;color:#fff;border-radius:2px}.layui-badge{height:18px;line-height:18px}.layui-badge-dot{width:8px;height:8px;padding:0;border-radius:50%}.layui-badge-rim{height:18px;line-height:18px;border-width:1px;border-style:solid;background-color:#fff;color:#5f5f5f}.layui-btn .layui-badge,.layui-btn .layui-badge-dot{margin-left:5px}.layui-nav .layui-badge,.layui-nav .layui-badge-dot{position:absolute;top:50%;margin:-5px 6px 0}.layui-nav .layui-badge{margin-top:-10px}.layui-tab-title .layui-badge,.layui-tab-title .layui-badge-dot{left:5px;top:-2px}.layui-carousel{position:relative;left:0;top:0;background-color:#f8f8f8}.layui-carousel>[carousel-item]{position:relative;width:100%;height:100%;overflow:hidden}.layui-carousel>[carousel-item]:before{position:absolute;content:'\e63d';left:50%;top:50%;width:100px;line-height:20px;margin:-10px 0 0 -50px;text-align:center;color:#c2c2c2;font-family:layui-icon!important;font-size:30px;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.layui-carousel>[carousel-item]>*{display:none;position:absolute;left:0;top:0;width:100%;height:100%;background-color:#f8f8f8;transition-duration:.3s;-webkit-transition-duration:.3s}.layui-carousel-updown>*{-webkit-transition:.3s ease-in-out up;transition:.3s ease-in-out up}.layui-carousel-arrow{display:none\0;opacity:0;position:absolute;left:10px;top:50%;margin-top:-18px;width:36px;height:36px;line-height:36px;text-align:center;font-size:20px;border:none 0;border-radius:50%;background-color:rgba(0,0,0,.2);color:#fff;-webkit-transition-duration:.3s;transition-duration:.3s;cursor:pointer}.layui-carousel-arrow[lay-type=add]{left:auto!important;right:10px}.layui-carousel[lay-arrow=always] .layui-carousel-arrow{opacity:1;left:20px}.layui-carousel[lay-arrow=always] .layui-carousel-arrow[lay-type=add]{right:20px}.layui-carousel[lay-arrow=none] .layui-carousel-arrow{display:none}.layui-carousel-arrow:hover,.layui-carousel-ind ul:hover{background-color:rgba(0,0,0,.35)}.layui-carousel:hover .layui-carousel-arrow{display:block\0;opacity:1;left:20px}.layui-carousel:hover .layui-carousel-arrow[lay-type=add]{right:20px}.layui-carousel-ind{position:relative;top:-35px;width:100%;line-height:0!important;text-align:center;font-size:0}.layui-carousel[lay-indicator=outside]{margin-bottom:30px}.layui-carousel[lay-indicator=outside] .layui-carousel-ind{top:10px}.layui-carousel[lay-indicator=outside] .layui-carousel-ind ul{background-color:rgba(0,0,0,.5)}.layui-carousel[lay-indicator=none] .layui-carousel-ind{display:none}.layui-carousel-ind ul{display:inline-block;padding:5px;background-color:rgba(0,0,0,.2);border-radius:10px;-webkit-transition-duration:.3s;transition-duration:.3s}.layui-carousel-ind li{display:inline-block;width:10px;height:10px;margin:0 3px;font-size:14px;background-color:#eee;background-color:rgba(255,255,255,.5);border-radius:50%;cursor:pointer;-webkit-transition-duration:.3s;transition-duration:.3s}.layui-carousel-ind li:hover{background-color:rgba(255,255,255,.7)}.layui-carousel-ind li.layui-this{background-color:#fff}.layui-carousel>[carousel-item]>.layui-carousel-next,.layui-carousel>[carousel-item]>.layui-carousel-prev,.layui-carousel>[carousel-item]>.layui-this{display:block}.layui-carousel>[carousel-item]>.layui-this{left:0}.layui-carousel>[carousel-item]>.layui-carousel-prev{left:-100%}.layui-carousel>[carousel-item]>.layui-carousel-next{left:100%}.layui-carousel>[carousel-item]>.layui-carousel-next.layui-carousel-left,.layui-carousel>[carousel-item]>.layui-carousel-prev.layui-carousel-right{left:0}.layui-carousel>[carousel-item]>.layui-this.layui-carousel-left{left:-100%}.layui-carousel>[carousel-item]>.layui-this.layui-carousel-right{left:100%}.layui-carousel[lay-anim=updown] .layui-carousel-arrow{left:50%!important;top:20px;margin:0 0 0 -18px}.layui-carousel[lay-anim=updown] .layui-carousel-arrow[lay-type=add]{top:auto!important;bottom:20px}.layui-carousel[lay-anim=updown] .layui-carousel-ind{position:absolute;top:50%;right:20px;width:auto;height:auto}.layui-carousel[lay-anim=updown] .layui-carousel-ind ul{padding:3px 5px}.layui-carousel[lay-anim=updown] .layui-carousel-ind li{display:block;margin:6px 0}.layui-carousel[lay-anim=updown]>[carousel-item]>*{left:0!important}.layui-carousel[lay-anim=updown]>[carousel-item]>.layui-this{top:0}.layui-carousel[lay-anim=updown]>[carousel-item]>.layui-carousel-prev{top:-100%}.layui-carousel[lay-anim=updown]>[carousel-item]>.layui-carousel-next{top:100%}.layui-carousel[lay-anim=updown]>[carousel-item]>.layui-carousel-next.layui-carousel-left,.layui-carousel[lay-anim=updown]>[carousel-item]>.layui-carousel-prev.layui-carousel-right{top:0}.layui-carousel[lay-anim=updown]>[carousel-item]>.layui-this.layui-carousel-left{top:-100%}.layui-carousel[lay-anim=updown]>[carousel-item]>.layui-this.layui-carousel-right{top:100%}.layui-carousel[lay-anim=fade]>[carousel-item]>*{left:0!important}.layui-carousel[lay-anim=fade]>[carousel-item]>.layui-carousel-next,.layui-carousel[lay-anim=fade]>[carousel-item]>.layui-carousel-prev{opacity:0}.layui-carousel[lay-anim=fade]>[carousel-item]>.layui-carousel-next.layui-carousel-left,.layui-carousel[lay-anim=fade]>[carousel-item]>.layui-carousel-prev.layui-carousel-right{opacity:1}.layui-carousel[lay-anim=fade]>[carousel-item]>.layui-this.layui-carousel-left,.layui-carousel[lay-anim=fade]>[carousel-item]>.layui-this.layui-carousel-right{opacity:0}.layui-fixbar{position:fixed;right:15px;bottom:15px;z-index:999999}.layui-fixbar li{width:50px;height:50px;line-height:50px;margin-bottom:1px;text-align:center;cursor:pointer;font-size:30px;background-color:#9f9f9f;color:#fff;border-radius:2px;opacity:.95}.layui-fixbar li:hover{opacity:.85}.layui-fixbar li:active{opacity:1}.layui-fixbar .layui-fixbar-top{display:none;font-size:40px}body .layui-util-face{border:none;background:0 0}body .layui-util-face .layui-layer-content{padding:0;background-color:#fff;color:#5f5f5f;box-shadow:none}.layui-util-face .layui-layer-TipsG{display:none}.layui-util-face ul{position:relative;width:372px;padding:10px;border:1px solid #d9d9d9;background-color:#fff;box-shadow:0 0 20px rgba(0,0,0,.2)}.layui-util-face ul li{cursor:pointer;float:left;border:1px solid #e8e8e8;height:22px;width:26px;overflow:hidden;margin:-1px 0 0 -1px;padding:4px 2px;text-align:center}.layui-util-face ul li:hover{position:relative;z-index:2;border:1px solid #eb7350;background:#fff9ec}.layui-code{position:relative;margin:10px 0;padding:15px;line-height:20px;border:1px solid #eee;border-left-width:6px;background-color:#fafafa;color:#333;font-family:Courier New;font-size:12px}.layui-transfer-box,.layui-transfer-header,.layui-transfer-search{border-width:0;border-style:solid;border-color:#eee}.layui-transfer-box{position:relative;display:inline-block;vertical-align:middle;border-width:1px;width:200px;height:360px;border-radius:2px;background-color:#fff}.layui-transfer-box .layui-form-checkbox{width:100%;margin:0!important}.layui-transfer-header{height:38px;line-height:38px;padding:0 10px;border-bottom-width:1px}.layui-transfer-search{position:relative;padding:10px;border-bottom-width:1px}.layui-transfer-search .layui-input{height:32px;padding-left:30px;font-size:12px}.layui-transfer-search .layui-icon-search{position:absolute;left:20px;top:50%;margin-top:-8px;color:#5f5f5f}.layui-transfer-active{margin:0 15px;display:inline-block;vertical-align:middle}.layui-transfer-active .layui-btn{display:block;margin:0;padding:0 15px;background-color:#5fb878;border-color:#5fb878;color:#fff}.layui-transfer-active .layui-btn-disabled{background-color:#fbfbfb;border-color:#eee;color:#d2d2d2}.layui-transfer-active .layui-btn:first-child{margin-bottom:15px}.layui-transfer-active .layui-btn .layui-icon{margin:0;font-size:14px!important}.layui-transfer-data{padding:5px 0;overflow:auto}.layui-transfer-data li{height:32px;line-height:32px;padding:0 10px}.layui-transfer-data li:hover{background-color:#f6f6f6;transition:.5s all}.layui-transfer-data .layui-none{padding:15px 10px;text-align:center;color:#999}.layui-rate,.layui-rate *{display:inline-block;vertical-align:middle}.layui-rate{padding:10px 5px 10px 0;font-size:0}.layui-rate li i.layui-icon{font-size:20px;color:#ffb800}.layui-rate li i.layui-icon{margin-right:5px;transition:all .3s;-webkit-transition:all .3s}.layui-rate li i:hover{cursor:pointer;transform:scale(1.12);-webkit-transform:scale(1.12)}.layui-rate[readonly] li i:hover{cursor:default;transform:scale(1)}.layui-colorpicker{width:26px;height:26px;border:1px solid #eee;padding:5px;border-radius:2px;line-height:24px;display:inline-block;cursor:pointer;transition:all .3s;-webkit-transition:all .3s}.layui-colorpicker:hover{border-color:#d2d2d2}.layui-colorpicker.layui-colorpicker-lg{width:34px;height:34px;line-height:32px}.layui-colorpicker.layui-colorpicker-sm{width:24px;height:24px;line-height:22px}.layui-colorpicker.layui-colorpicker-xs{width:22px;height:22px;line-height:20px}.layui-colorpicker-trigger-bgcolor{display:block;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==);border-radius:2px}.layui-colorpicker-trigger-span{display:block;height:100%;box-sizing:border-box;border:1px solid rgba(0,0,0,.15);border-radius:2px;text-align:center}.layui-colorpicker-trigger-i{display:inline-block;color:#fff;font-size:12px}.layui-colorpicker-trigger-i.layui-icon-close{color:#999}.layui-colorpicker-main{position:absolute;left:-999999px;top:-999999px;z-index:77777777;width:280px;margin:5px 0;padding:7px;background:#fff;border:1px solid #d2d2d2;border-radius:2px;box-shadow:0 2px 4px rgba(0,0,0,.12)}.layui-colorpicker-main-wrapper{height:180px;position:relative}.layui-colorpicker-basis{width:260px;height:100%;position:relative}.layui-colorpicker-basis-white{width:100%;height:100%;position:absolute;top:0;left:0;background:linear-gradient(90deg,#fff,hsla(0,0%,100%,0))}.layui-colorpicker-basis-black{width:100%;height:100%;position:absolute;top:0;left:0;background:linear-gradient(0deg,#000,transparent)}.layui-colorpicker-basis-cursor{width:10px;height:10px;border:1px solid #fff;border-radius:50%;position:absolute;top:-3px;right:-3px;cursor:pointer}.layui-colorpicker-side{position:absolute;top:0;right:0;width:12px;height:100%;background:linear-gradient(red,#ff0,#0f0,#0ff,#00f,#f0f,red)}.layui-colorpicker-side-slider{width:100%;height:5px;box-shadow:0 0 1px #888;box-sizing:border-box;background:#fff;border-radius:1px;border:1px solid #f0f0f0;cursor:pointer;position:absolute;left:0}.layui-colorpicker-main-alpha{display:none;height:12px;margin-top:7px;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==)}.layui-colorpicker-alpha-bgcolor{height:100%;position:relative}.layui-colorpicker-alpha-slider{width:5px;height:100%;box-shadow:0 0 1px #888;box-sizing:border-box;background:#fff;border-radius:1px;border:1px solid #f0f0f0;cursor:pointer;position:absolute;top:0}.layui-colorpicker-main-pre{padding-top:7px;font-size:0}.layui-colorpicker-pre{width:20px;height:20px;border-radius:2px;display:inline-block;margin-left:6px;margin-bottom:7px;cursor:pointer}.layui-colorpicker-pre:nth-child(11n+1){margin-left:0}.layui-colorpicker-pre-isalpha{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==)}.layui-colorpicker-pre.layui-this{box-shadow:0 0 3px 2px rgba(0,0,0,.15)}.layui-colorpicker-pre>div{height:100%;border-radius:2px}.layui-colorpicker-main-input{text-align:right;padding-top:7px}.layui-colorpicker-main-input .layui-btn-container .layui-btn{margin:0 0 0 10px}.layui-colorpicker-main-input div.layui-inline{float:left;margin-right:10px;font-size:14px}.layui-colorpicker-main-input input.layui-input{width:150px;height:30px;color:#5f5f5f}.layui-slider{height:4px;background:#eee;border-radius:3px;position:relative;cursor:pointer}.layui-slider-bar{border-radius:3px;position:absolute;height:100%}.layui-slider-step{position:absolute;top:0;width:4px;height:4px;border-radius:50%;background:#fff;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.layui-slider-wrap{width:36px;height:36px;position:absolute;top:-16px;-webkit-transform:translateX(-50%);transform:translateX(-50%);z-index:10;text-align:center}.layui-slider-wrap-btn{width:12px;height:12px;border-radius:50%;background:#fff;display:inline-block;vertical-align:middle;cursor:pointer;transition:.3s}.layui-slider-wrap:after{content:"";height:100%;display:inline-block;vertical-align:middle}.layui-slider-wrap-btn.layui-slider-hover,.layui-slider-wrap-btn:hover{transform:scale(1.2)}.layui-slider-wrap-btn.layui-disabled:hover{transform:scale(1)!important}.layui-slider-tips{position:absolute;top:-42px;z-index:77777777;white-space:nowrap;display:none;-webkit-transform:translateX(-50%);transform:translateX(-50%);color:#fff;background:#000;border-radius:3px;height:25px;line-height:25px;padding:0 10px}.layui-slider-tips:after{content:"";position:absolute;bottom:-12px;left:50%;margin-left:-6px;width:0;height:0;border-width:6px;border-style:solid;border-color:#000 transparent transparent transparent}.layui-slider-input{width:70px;height:32px;border:1px solid #eee;border-radius:3px;font-size:16px;line-height:32px;position:absolute;right:0;top:-14px}.layui-slider-input-btn{position:absolute;top:0;right:0;width:20px;height:100%;border-left:1px solid #eee}.layui-slider-input-btn i{cursor:pointer;position:absolute;right:0;bottom:0;width:20px;height:50%;font-size:12px;line-height:16px;text-align:center;color:#999}.layui-slider-input-btn i:first-child{top:0;border-bottom:1px solid #eee}.layui-slider-input-txt{height:100%;font-size:14px}.layui-slider-input-txt input{height:100%;border:none}.layui-slider-input-btn i:hover{color:#009688}.layui-slider-vertical{width:4px;margin-left:33px}.layui-slider-vertical .layui-slider-bar{width:4px}.layui-slider-vertical .layui-slider-step{top:auto;left:0;-webkit-transform:translateY(50%);transform:translateY(50%)}.layui-slider-vertical .layui-slider-wrap{top:auto;left:-16px;-webkit-transform:translateY(50%);transform:translateY(50%)}.layui-slider-vertical .layui-slider-tips{top:auto;left:2px}@media \0screen{.layui-slider-wrap-btn{margin-left:-20px}.layui-slider-vertical .layui-slider-wrap-btn{margin-left:0;margin-bottom:-20px}.layui-slider-vertical .layui-slider-tips{margin-left:-8px}.layui-slider>span{margin-left:8px}}.layui-tree{line-height:22px}.layui-tree .layui-form-checkbox{margin:0!important}.layui-tree-set{width:100%;position:relative}.layui-tree-pack{display:none;padding-left:20px;position:relative}.layui-tree-line .layui-tree-pack{padding-left:27px}.layui-tree-line .layui-tree-set .layui-tree-set:after{content:"";position:absolute;top:14px;left:-9px;width:17px;height:0;border-top:1px dotted #c0c4cc}.layui-tree-entry{position:relative;padding:3px 0;height:20px;white-space:nowrap}.layui-tree-entry:hover{background-color:#eee}.layui-tree-line .layui-tree-entry:hover{background-color:rgba(0,0,0,0)}.layui-tree-line .layui-tree-entry:hover .layui-tree-txt{color:#999;text-decoration:underline;transition:.3s}.layui-tree-main{display:inline-block;vertical-align:middle;cursor:pointer;padding-right:10px}.layui-tree-line .layui-tree-set:before{content:"";position:absolute;top:0;left:-9px;width:0;height:100%;border-left:1px dotted #c0c4cc}.layui-tree-line .layui-tree-set.layui-tree-setLineShort:before{height:13px}.layui-tree-line .layui-tree-set.layui-tree-setHide:before{height:0}.layui-tree-iconClick{display:inline-block;vertical-align:middle;position:relative;height:20px;line-height:20px;margin:0 10px;color:#c0c4cc}.layui-tree-icon{height:12px;line-height:12px;width:12px;text-align:center;border:1px solid #c0c4cc}.layui-tree-iconClick .layui-icon{font-size:18px}.layui-tree-icon .layui-icon{font-size:12px;color:#5f5f5f}.layui-tree-iconArrow{padding:0 5px}.layui-tree-iconArrow:after{content:"";position:absolute;left:4px;top:3px;z-index:100;width:0;height:0;border-width:5px;border-style:solid;border-color:transparent transparent transparent #c0c4cc;transition:.5s}.layui-tree-spread>.layui-tree-entry .layui-tree-iconClick>.layui-tree-iconArrow:after{transform:rotate(90deg) translate(3px,4px)}.layui-tree-txt{display:inline-block;vertical-align:middle;color:#555}.layui-tree-search{margin-bottom:15px;color:#5f5f5f}.layui-tree-btnGroup{visibility:hidden;display:inline-block;vertical-align:middle;position:relative}.layui-tree-btnGroup .layui-icon{display:inline-block;vertical-align:middle;padding:0 2px;cursor:pointer}.layui-tree-btnGroup .layui-icon:hover{color:#999;transition:.3s}.layui-tree-entry:hover .layui-tree-btnGroup{visibility:visible}.layui-tree-editInput{position:relative;display:inline-block;vertical-align:middle;height:20px;line-height:20px;padding:0 3px;border:none;background-color:rgba(0,0,0,.05)}.layui-tree-emptyText{text-align:center;color:#999}.layui-anim{-webkit-animation-duration:.3s;-webkit-animation-fill-mode:both;animation-duration:.3s;animation-fill-mode:both}.layui-anim.layui-icon{display:inline-block}.layui-anim-loop{-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite}.layui-trans,.layui-trans a{transition:all .2s;-webkit-transition:all .2s}@-webkit-keyframes layui-rotate{from{-webkit-transform:rotate(0)}to{-webkit-transform:rotate(360deg)}}@keyframes layui-rotate{from{transform:rotate(0)}to{transform:rotate(360deg)}}.layui-anim-rotate{-webkit-animation-name:layui-rotate;animation-name:layui-rotate;-webkit-animation-duration:1s;animation-duration:1s;-webkit-animation-timing-function:linear;animation-timing-function:linear}@-webkit-keyframes layui-up{from{-webkit-transform:translate3d(0,100%,0);opacity:.3}to{-webkit-transform:translate3d(0,0,0);opacity:1}}@keyframes layui-up{from{transform:translate3d(0,100%,0);opacity:.3}to{transform:translate3d(0,0,0);opacity:1}}.layui-anim-up{-webkit-animation-name:layui-up;animation-name:layui-up}@-webkit-keyframes layui-upbit{from{-webkit-transform:translate3d(0,15px,0);opacity:.3}to{-webkit-transform:translate3d(0,0,0);opacity:1}}@keyframes layui-upbit{from{transform:translate3d(0,15px,0);opacity:.3}to{transform:translate3d(0,0,0);opacity:1}}.layui-anim-upbit{-webkit-animation-name:layui-upbit;animation-name:layui-upbit}@keyframes layui-down{0%{opacity:.3;transform:translate3d(0,-100%,0)}100%{opacity:1;transform:translate3d(0,0,0)}}.layui-anim-down{animation-name:layui-down}@keyframes layui-downbit{0%{opacity:.3;transform:translate3d(0,-5px,0)}100%{opacity:1;transform:translate3d(0,0,0)}}.layui-anim-downbit{animation-name:layui-downbit}@-webkit-keyframes layui-scale{0%{opacity:.3;-webkit-transform:scale(.5)}100%{opacity:1;-webkit-transform:scale(1)}}@keyframes layui-scale{0%{opacity:.3;-ms-transform:scale(.5);transform:scale(.5)}100%{opacity:1;-ms-transform:scale(1);transform:scale(1)}}.layui-anim-scale{-webkit-animation-name:layui-scale;animation-name:layui-scale}@-webkit-keyframes layui-scale-spring{0%{opacity:.5;-webkit-transform:scale(.5)}80%{opacity:.8;-webkit-transform:scale(1.1)}100%{opacity:1;-webkit-transform:scale(1)}}@keyframes layui-scale-spring{0%{opacity:.5;transform:scale(.5)}80%{opacity:.8;transform:scale(1.1)}100%{opacity:1;transform:scale(1)}}.layui-anim-scaleSpring{-webkit-animation-name:layui-scale-spring;animation-name:layui-scale-spring}@keyframes layui-scalesmall{0%{opacity:.3;transform:scale(1.5)}100%{opacity:1;transform:scale(1)}}.layui-anim-scalesmall{animation-name:layui-scalesmall}@keyframes layui-scalesmall-spring{0%{opacity:.3;transform:scale(1.5)}80%{opacity:.8;transform:scale(.9)}100%{opacity:1;transform:scale(1)}}.layui-anim-scalesmall-spring{animation-name:layui-scalesmall-spring}@-webkit-keyframes layui-fadein{0%{opacity:0}100%{opacity:1}}@keyframes layui-fadein{0%{opacity:0}100%{opacity:1}}.layui-anim-fadein{-webkit-animation-name:layui-fadein;animation-name:layui-fadein}@-webkit-keyframes layui-fadeout{0%{opacity:1}100%{opacity:0}}@keyframes layui-fadeout{0%{opacity:1}100%{opacity:0}}.layui-anim-fadeout{-webkit-animation-name:layui-fadeout;animation-name:layui-fadeout} \ No newline at end of file +blockquote,body,button,dd,div,dl,dt,form,h1,h2,h3,h4,h5,h6,input,li,ol,p,pre,td,textarea,th,ul{margin:0;padding:0;-webkit-tap-highlight-color:rgba(0,0,0,0)}a:active,a:hover{outline:0}img{display:inline-block;border:none;vertical-align:middle}li{list-style:none}table{border-collapse:collapse;border-spacing:0}h1,h2,h3,h4{font-weight:700}h5,h6{font-weight:500;font-size:100%}button,input,select,textarea{font-size:100%}button,input,optgroup,option,select,textarea{font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;outline:0}pre{white-space:pre-wrap;white-space:-moz-pre-wrap;white-space:-pre-wrap;white-space:-o-pre-wrap;word-wrap:break-word}body{line-height:1.6;color:#333;color:rgba(0,0,0,.85);font:14px Helvetica Neue,Helvetica,PingFang SC,Tahoma,Arial,sans-serif}hr{height:0;line-height:0;margin:10px 0;padding:0;border:none!important;border-bottom:1px solid #eee!important;clear:both;overflow:hidden;background:0 0}a{color:#333;text-decoration:none}a:hover{color:#777}a cite{font-style:normal;*cursor:pointer}.layui-border-box,.layui-border-box *{box-sizing:border-box}.layui-box,.layui-box *{box-sizing:content-box}.layui-clear{clear:both;*zoom:1}.layui-clear:after{content:'\20';clear:both;*zoom:1;display:block;height:0}.layui-clear-space{word-spacing:-5px}.layui-inline{position:relative;display:inline-block;*display:inline;*zoom:1;vertical-align:middle}.layui-edge{position:relative;display:inline-block;vertical-align:middle;width:0;height:0;border-width:6px;border-style:dashed;border-color:transparent;overflow:hidden}.layui-edge-top{top:-4px;border-bottom-color:#999;border-bottom-style:solid}.layui-edge-right{border-left-color:#999;border-left-style:solid}.layui-edge-bottom{top:2px;border-top-color:#999;border-top-style:solid}.layui-edge-left{border-right-color:#999;border-right-style:solid}.layui-elip{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.layui-disabled,.layui-icon,.layui-unselect{-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.layui-disabled,.layui-disabled:hover{color:#d2d2d2!important;cursor:not-allowed!important}.layui-circle{border-radius:100%}.layui-show{display:block!important}.layui-hide{display:none!important}.layui-show-v{visibility:visible!important}.layui-hide-v{visibility:hidden!important}@font-face{font-family:layui-icon;src:url(../font/iconfont.eot?v=282);src:url(../font/iconfont.eot?v=282#iefix) format('embedded-opentype'),url(../font/iconfont.woff2?v=282) format('woff2'),url(../font/iconfont.woff?v=282) format('woff'),url(../font/iconfont.ttf?v=282) format('truetype'),url(../font/iconfont.svg?v=282#layui-icon) format('svg')}.layui-icon{font-family:layui-icon!important;font-size:16px;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.layui-icon-leaf:before{content:"\e701"}.layui-icon-folder:before{content:"\eabe"}.layui-icon-folder-open:before{content:"\eac1"}.layui-icon-gitee:before{content:"\e69b"}.layui-icon-github:before{content:"\e6a7"}.layui-icon-disabled:before{content:"\e6cc"}.layui-icon-moon:before{content:"\e6c2"}.layui-icon-error:before{content:"\e693"}.layui-icon-success:before{content:"\e697"}.layui-icon-question:before{content:"\e699"}.layui-icon-lock:before{content:"\e69a"}.layui-icon-eye:before{content:"\e695"}.layui-icon-eye-invisible:before{content:"\e696"}.layui-icon-backspace:before{content:"\e694"}.layui-icon-tips-fill:before{content:"\eb2e"}.layui-icon-test:before{content:"\e692"}.layui-icon-clear:before{content:"\e788"}.layui-icon-heart-fill:before{content:"\e68f"}.layui-icon-light:before{content:"\e748"}.layui-icon-music:before{content:"\e690"}.layui-icon-time:before{content:"\e68d"}.layui-icon-ie:before{content:"\e7bb"}.layui-icon-firefox:before{content:"\e686"}.layui-icon-at:before{content:"\e687"}.layui-icon-bluetooth:before{content:"\e689"}.layui-icon-chrome:before{content:"\e68a"}.layui-icon-edge:before{content:"\e68b"}.layui-icon-heart:before{content:"\e68c"}.layui-icon-key:before{content:"\e683"}.layui-icon-android:before{content:"\e684"}.layui-icon-mike:before{content:"\e6dc"}.layui-icon-mute:before{content:"\e685"}.layui-icon-gift:before{content:"\e627"}.layui-icon-windows:before{content:"\e67f"}.layui-icon-ios:before{content:"\e680"}.layui-icon-logout:before{content:"\e682"}.layui-icon-wifi:before{content:"\e7e0"}.layui-icon-rss:before{content:"\e808"}.layui-icon-email:before{content:"\e618"}.layui-icon-reduce-circle:before{content:"\e616"}.layui-icon-transfer:before{content:"\e691"}.layui-icon-service:before{content:"\e626"}.layui-icon-addition:before{content:"\e624"}.layui-icon-subtraction:before{content:"\e67e"}.layui-icon-slider:before{content:"\e714"}.layui-icon-print:before{content:"\e66d"}.layui-icon-export:before{content:"\e67d"}.layui-icon-cols:before{content:"\e610"}.layui-icon-screen-full:before{content:"\e622"}.layui-icon-screen-restore:before{content:"\e758"}.layui-icon-rate-half:before{content:"\e6c9"}.layui-icon-rate-solid:before{content:"\e67a"}.layui-icon-rate:before{content:"\e67b"}.layui-icon-cellphone:before{content:"\e678"}.layui-icon-vercode:before{content:"\e679"}.layui-icon-login-weibo:before{content:"\e675"}.layui-icon-login-qq:before{content:"\e676"}.layui-icon-login-wechat:before{content:"\e677"}.layui-icon-username:before{content:"\e66f"}.layui-icon-password:before{content:"\e673"}.layui-icon-refresh-3:before{content:"\e9aa"}.layui-icon-auz:before{content:"\e672"}.layui-icon-shrink-right:before{content:"\e668"}.layui-icon-spread-left:before{content:"\e66b"}.layui-icon-snowflake:before{content:"\e6b1"}.layui-icon-tips:before{content:"\e702"}.layui-icon-note:before{content:"\e66e"}.layui-icon-senior:before{content:"\e674"}.layui-icon-refresh-1:before{content:"\e666"}.layui-icon-refresh:before{content:"\e669"}.layui-icon-flag:before{content:"\e66c"}.layui-icon-theme:before{content:"\e66a"}.layui-icon-notice:before{content:"\e667"}.layui-icon-console:before{content:"\e665"}.layui-icon-website:before{content:"\e7ae"}.layui-icon-face-surprised:before{content:"\e664"}.layui-icon-set:before{content:"\e716"}.layui-icon-template:before{content:"\e663"}.layui-icon-app:before{content:"\e653"}.layui-icon-template-1:before{content:"\e656"}.layui-icon-home:before{content:"\e68e"}.layui-icon-female:before{content:"\e661"}.layui-icon-male:before{content:"\e662"}.layui-icon-tread:before{content:"\e6c5"}.layui-icon-praise:before{content:"\e6c6"}.layui-icon-rmb:before{content:"\e65e"}.layui-icon-more:before{content:"\e65f"}.layui-icon-camera:before{content:"\e660"}.layui-icon-cart-simple:before{content:"\e698"}.layui-icon-face-cry:before{content:"\e69c"}.layui-icon-face-smile:before{content:"\e6af"}.layui-icon-survey:before{content:"\e6b2"}.layui-icon-read:before{content:"\e705"}.layui-icon-location:before{content:"\e715"}.layui-icon-dollar:before{content:"\e659"}.layui-icon-diamond:before{content:"\e735"}.layui-icon-return:before{content:"\e65c"}.layui-icon-camera-fill:before{content:"\e65d"}.layui-icon-fire:before{content:"\e756"}.layui-icon-more-vertical:before{content:"\e671"}.layui-icon-cart:before{content:"\e657"}.layui-icon-star-fill:before{content:"\e658"}.layui-icon-prev:before{content:"\e65a"}.layui-icon-next:before{content:"\e65b"}.layui-icon-upload:before{content:"\e67c"}.layui-icon-upload-drag:before{content:"\e681"}.layui-icon-user:before{content:"\e770"}.layui-icon-file-b:before{content:"\e655"}.layui-icon-component:before{content:"\e857"}.layui-icon-find-fill:before{content:"\e670"}.layui-icon-loading:before{content:"\e63d"}.layui-icon-loading-1:before{content:"\e63e"}.layui-icon-add-1:before{content:"\e654"}.layui-icon-pause:before{content:"\e651"}.layui-icon-play:before{content:"\e652"}.layui-icon-video:before{content:"\e6ed"}.layui-icon-headset:before{content:"\e6fc"}.layui-icon-voice:before{content:"\e688"}.layui-icon-speaker:before{content:"\e645"}.layui-icon-fonts-del:before{content:"\e64f"}.layui-icon-fonts-html:before{content:"\e64b"}.layui-icon-fonts-code:before{content:"\e64e"}.layui-icon-fonts-strong:before{content:"\e62b"}.layui-icon-unlink:before{content:"\e64d"}.layui-icon-picture:before{content:"\e64a"}.layui-icon-link:before{content:"\e64c"}.layui-icon-face-smile-b:before{content:"\e650"}.layui-icon-align-center:before{content:"\e647"}.layui-icon-align-right:before{content:"\e648"}.layui-icon-align-left:before{content:"\e649"}.layui-icon-fonts-u:before{content:"\e646"}.layui-icon-fonts-i:before{content:"\e644"}.layui-icon-tabs:before{content:"\e62a"}.layui-icon-circle:before{content:"\e63f"}.layui-icon-radio:before{content:"\e643"}.layui-icon-share:before{content:"\e641"}.layui-icon-edit:before{content:"\e642"}.layui-icon-delete:before{content:"\e640"}.layui-icon-engine:before{content:"\e628"}.layui-icon-chart-screen:before{content:"\e629"}.layui-icon-chart:before{content:"\e62c"}.layui-icon-table:before{content:"\e62d"}.layui-icon-tree:before{content:"\e62e"}.layui-icon-upload-circle:before{content:"\e62f"}.layui-icon-templeate-1:before{content:"\e630"}.layui-icon-util:before{content:"\e631"}.layui-icon-layouts:before{content:"\e632"}.layui-icon-prev-circle:before{content:"\e633"}.layui-icon-carousel:before{content:"\e634"}.layui-icon-code-circle:before{content:"\e635"}.layui-icon-water:before{content:"\e636"}.layui-icon-date:before{content:"\e637"}.layui-icon-layer:before{content:"\e638"}.layui-icon-fonts-clear:before{content:"\e639"}.layui-icon-dialogue:before{content:"\e63a"}.layui-icon-cellphone-fine:before{content:"\e63b"}.layui-icon-form:before{content:"\e63c"}.layui-icon-file:before{content:"\e621"}.layui-icon-triangle-r:before{content:"\e623"}.layui-icon-triangle-d:before{content:"\e625"}.layui-icon-set-sm:before{content:"\e620"}.layui-icon-add-circle:before{content:"\e61f"}.layui-icon-layim-download:before{content:"\e61e"}.layui-icon-layim-uploadfile:before{content:"\e61d"}.layui-icon-404:before{content:"\e61c"}.layui-icon-about:before{content:"\e60b"}.layui-icon-layim-theme:before{content:"\e61b"}.layui-icon-down:before{content:"\e61a"}.layui-icon-up:before{content:"\e619"}.layui-icon-circle-dot:before{content:"\e617"}.layui-icon-set-fill:before{content:"\e614"}.layui-icon-search:before{content:"\e615"}.layui-icon-friends:before{content:"\e612"}.layui-icon-group:before{content:"\e613"}.layui-icon-reply-fill:before{content:"\e611"}.layui-icon-menu-fill:before{content:"\e60f"}.layui-icon-face-smile-fine:before{content:"\e60c"}.layui-icon-picture-fine:before{content:"\e60d"}.layui-icon-log:before{content:"\e60e"}.layui-icon-list:before{content:"\e60a"}.layui-icon-release:before{content:"\e609"}.layui-icon-add-circle-fine:before{content:"\e608"}.layui-icon-ok:before{content:"\e605"}.layui-icon-help:before{content:"\e607"}.layui-icon-chat:before{content:"\e606"}.layui-icon-top:before{content:"\e604"}.layui-icon-right:before{content:"\e602"}.layui-icon-left:before{content:"\e603"}.layui-icon-star:before{content:"\e600"}.layui-icon-download-circle:before{content:"\e601"}.layui-icon-close:before{content:"\1006"}.layui-icon-close-fill:before{content:"\1007"}.layui-icon-ok-circle:before{content:"\1005"}.layui-main{position:relative;width:1160px;margin:0 auto}.layui-header{position:relative;z-index:1000;height:60px}.layui-header a:hover{transition:all .5s;-webkit-transition:all .5s}.layui-side{position:fixed;left:0;top:0;bottom:0;z-index:999;width:200px;overflow-x:hidden}.layui-side-scroll{position:relative;width:220px;height:100%;overflow-x:hidden}.layui-body{position:relative;left:200px;right:0;top:0;bottom:0;z-index:900;width:auto;box-sizing:border-box}.layui-layout-body{overflow-x:hidden}.layui-layout-admin .layui-header{position:fixed;top:0;left:0;right:0;background-color:#23292e}.layui-layout-admin .layui-side{top:60px;width:200px;overflow-x:hidden}.layui-layout-admin .layui-body{position:absolute;top:60px;padding-bottom:44px}.layui-layout-admin .layui-main{width:auto;margin:0 15px}.layui-layout-admin .layui-footer{position:fixed;left:200px;right:0;bottom:0;z-index:990;height:44px;line-height:44px;padding:0 15px;box-shadow:-1px 0 4px rgb(0 0 0 / 12%);background-color:#fafafa}.layui-layout-admin .layui-logo{position:absolute;left:0;top:0;width:200px;height:100%;line-height:60px;text-align:center;color:#16baaa;font-size:16px;box-shadow:0 1px 2px 0 rgb(0 0 0 / 15%)}.layui-layout-admin .layui-header .layui-nav{background:0 0}.layui-layout-left{position:absolute!important;left:200px;top:0}.layui-layout-right{position:absolute!important;right:0;top:0}.layui-container{position:relative;margin:0 auto;box-sizing:border-box}.layui-fluid{position:relative;margin:0 auto;padding:0 15px}.layui-row:after,.layui-row:before{content:"";display:block;clear:both}.layui-col-lg1,.layui-col-lg10,.layui-col-lg11,.layui-col-lg12,.layui-col-lg2,.layui-col-lg3,.layui-col-lg4,.layui-col-lg5,.layui-col-lg6,.layui-col-lg7,.layui-col-lg8,.layui-col-lg9,.layui-col-md1,.layui-col-md10,.layui-col-md11,.layui-col-md12,.layui-col-md2,.layui-col-md3,.layui-col-md4,.layui-col-md5,.layui-col-md6,.layui-col-md7,.layui-col-md8,.layui-col-md9,.layui-col-sm1,.layui-col-sm10,.layui-col-sm11,.layui-col-sm12,.layui-col-sm2,.layui-col-sm3,.layui-col-sm4,.layui-col-sm5,.layui-col-sm6,.layui-col-sm7,.layui-col-sm8,.layui-col-sm9,.layui-col-xl1,.layui-col-xl10,.layui-col-xl11,.layui-col-xl12,.layui-col-xl2,.layui-col-xl3,.layui-col-xl4,.layui-col-xl5,.layui-col-xl6,.layui-col-xl7,.layui-col-xl8,.layui-col-xl9,.layui-col-xs1,.layui-col-xs10,.layui-col-xs11,.layui-col-xs12,.layui-col-xs2,.layui-col-xs3,.layui-col-xs4,.layui-col-xs5,.layui-col-xs6,.layui-col-xs7,.layui-col-xs8,.layui-col-xs9{position:relative;display:block;box-sizing:border-box}.layui-col-xs1,.layui-col-xs10,.layui-col-xs11,.layui-col-xs12,.layui-col-xs2,.layui-col-xs3,.layui-col-xs4,.layui-col-xs5,.layui-col-xs6,.layui-col-xs7,.layui-col-xs8,.layui-col-xs9{float:left}.layui-col-xs1{width:8.33333333%}.layui-col-xs2{width:16.66666667%}.layui-col-xs3{width:25%}.layui-col-xs4{width:33.33333333%}.layui-col-xs5{width:41.66666667%}.layui-col-xs6{width:50%}.layui-col-xs7{width:58.33333333%}.layui-col-xs8{width:66.66666667%}.layui-col-xs9{width:75%}.layui-col-xs10{width:83.33333333%}.layui-col-xs11{width:91.66666667%}.layui-col-xs12{width:100%}.layui-col-xs-offset1{margin-left:8.33333333%}.layui-col-xs-offset2{margin-left:16.66666667%}.layui-col-xs-offset3{margin-left:25%}.layui-col-xs-offset4{margin-left:33.33333333%}.layui-col-xs-offset5{margin-left:41.66666667%}.layui-col-xs-offset6{margin-left:50%}.layui-col-xs-offset7{margin-left:58.33333333%}.layui-col-xs-offset8{margin-left:66.66666667%}.layui-col-xs-offset9{margin-left:75%}.layui-col-xs-offset10{margin-left:83.33333333%}.layui-col-xs-offset11{margin-left:91.66666667%}.layui-col-xs-offset12{margin-left:100%}@media screen and (max-width:767.98px){.layui-container{padding:0 15px}.layui-hide-xs{display:none!important}.layui-show-xs-block{display:block!important}.layui-show-xs-inline{display:inline!important}.layui-show-xs-inline-block{display:inline-block!important}}@media screen and (min-width:768px){.layui-container{width:720px}.layui-hide-sm{display:none!important}.layui-show-sm-block{display:block!important}.layui-show-sm-inline{display:inline!important}.layui-show-sm-inline-block{display:inline-block!important}.layui-col-sm1,.layui-col-sm10,.layui-col-sm11,.layui-col-sm12,.layui-col-sm2,.layui-col-sm3,.layui-col-sm4,.layui-col-sm5,.layui-col-sm6,.layui-col-sm7,.layui-col-sm8,.layui-col-sm9{float:left}.layui-col-sm1{width:8.33333333%}.layui-col-sm2{width:16.66666667%}.layui-col-sm3{width:25%}.layui-col-sm4{width:33.33333333%}.layui-col-sm5{width:41.66666667%}.layui-col-sm6{width:50%}.layui-col-sm7{width:58.33333333%}.layui-col-sm8{width:66.66666667%}.layui-col-sm9{width:75%}.layui-col-sm10{width:83.33333333%}.layui-col-sm11{width:91.66666667%}.layui-col-sm12{width:100%}.layui-col-sm-offset1{margin-left:8.33333333%}.layui-col-sm-offset2{margin-left:16.66666667%}.layui-col-sm-offset3{margin-left:25%}.layui-col-sm-offset4{margin-left:33.33333333%}.layui-col-sm-offset5{margin-left:41.66666667%}.layui-col-sm-offset6{margin-left:50%}.layui-col-sm-offset7{margin-left:58.33333333%}.layui-col-sm-offset8{margin-left:66.66666667%}.layui-col-sm-offset9{margin-left:75%}.layui-col-sm-offset10{margin-left:83.33333333%}.layui-col-sm-offset11{margin-left:91.66666667%}.layui-col-sm-offset12{margin-left:100%}}@media screen and (min-width:992px){.layui-container{width:960px}.layui-hide-md{display:none!important}.layui-show-md-block{display:block!important}.layui-show-md-inline{display:inline!important}.layui-show-md-inline-block{display:inline-block!important}.layui-col-md1,.layui-col-md10,.layui-col-md11,.layui-col-md12,.layui-col-md2,.layui-col-md3,.layui-col-md4,.layui-col-md5,.layui-col-md6,.layui-col-md7,.layui-col-md8,.layui-col-md9{float:left}.layui-col-md1{width:8.33333333%}.layui-col-md2{width:16.66666667%}.layui-col-md3{width:25%}.layui-col-md4{width:33.33333333%}.layui-col-md5{width:41.66666667%}.layui-col-md6{width:50%}.layui-col-md7{width:58.33333333%}.layui-col-md8{width:66.66666667%}.layui-col-md9{width:75%}.layui-col-md10{width:83.33333333%}.layui-col-md11{width:91.66666667%}.layui-col-md12{width:100%}.layui-col-md-offset1{margin-left:8.33333333%}.layui-col-md-offset2{margin-left:16.66666667%}.layui-col-md-offset3{margin-left:25%}.layui-col-md-offset4{margin-left:33.33333333%}.layui-col-md-offset5{margin-left:41.66666667%}.layui-col-md-offset6{margin-left:50%}.layui-col-md-offset7{margin-left:58.33333333%}.layui-col-md-offset8{margin-left:66.66666667%}.layui-col-md-offset9{margin-left:75%}.layui-col-md-offset10{margin-left:83.33333333%}.layui-col-md-offset11{margin-left:91.66666667%}.layui-col-md-offset12{margin-left:100%}}@media screen and (min-width:1200px){.layui-container{width:1150px}.layui-hide-lg{display:none!important}.layui-show-lg-block{display:block!important}.layui-show-lg-inline{display:inline!important}.layui-show-lg-inline-block{display:inline-block!important}.layui-col-lg1,.layui-col-lg10,.layui-col-lg11,.layui-col-lg12,.layui-col-lg2,.layui-col-lg3,.layui-col-lg4,.layui-col-lg5,.layui-col-lg6,.layui-col-lg7,.layui-col-lg8,.layui-col-lg9{float:left}.layui-col-lg1{width:8.33333333%}.layui-col-lg2{width:16.66666667%}.layui-col-lg3{width:25%}.layui-col-lg4{width:33.33333333%}.layui-col-lg5{width:41.66666667%}.layui-col-lg6{width:50%}.layui-col-lg7{width:58.33333333%}.layui-col-lg8{width:66.66666667%}.layui-col-lg9{width:75%}.layui-col-lg10{width:83.33333333%}.layui-col-lg11{width:91.66666667%}.layui-col-lg12{width:100%}.layui-col-lg-offset1{margin-left:8.33333333%}.layui-col-lg-offset2{margin-left:16.66666667%}.layui-col-lg-offset3{margin-left:25%}.layui-col-lg-offset4{margin-left:33.33333333%}.layui-col-lg-offset5{margin-left:41.66666667%}.layui-col-lg-offset6{margin-left:50%}.layui-col-lg-offset7{margin-left:58.33333333%}.layui-col-lg-offset8{margin-left:66.66666667%}.layui-col-lg-offset9{margin-left:75%}.layui-col-lg-offset10{margin-left:83.33333333%}.layui-col-lg-offset11{margin-left:91.66666667%}.layui-col-lg-offset12{margin-left:100%}}@media screen and (min-width:1400px){.layui-container{width:1330px}.layui-hide-xl{display:none!important}.layui-show-xl-block{display:block!important}.layui-show-xl-inline{display:inline!important}.layui-show-xl-inline-block{display:inline-block!important}.layui-col-xl1,.layui-col-xl10,.layui-col-xl11,.layui-col-xl12,.layui-col-xl2,.layui-col-xl3,.layui-col-xl4,.layui-col-xl5,.layui-col-xl6,.layui-col-xl7,.layui-col-xl8,.layui-col-xl9{float:left}.layui-col-xl1{width:8.33333333%}.layui-col-xl2{width:16.66666667%}.layui-col-xl3{width:25%}.layui-col-xl4{width:33.33333333%}.layui-col-xl5{width:41.66666667%}.layui-col-xl6{width:50%}.layui-col-xl7{width:58.33333333%}.layui-col-xl8{width:66.66666667%}.layui-col-xl9{width:75%}.layui-col-xl10{width:83.33333333%}.layui-col-xl11{width:91.66666667%}.layui-col-xl12{width:100%}.layui-col-xl-offset1{margin-left:8.33333333%}.layui-col-xl-offset2{margin-left:16.66666667%}.layui-col-xl-offset3{margin-left:25%}.layui-col-xl-offset4{margin-left:33.33333333%}.layui-col-xl-offset5{margin-left:41.66666667%}.layui-col-xl-offset6{margin-left:50%}.layui-col-xl-offset7{margin-left:58.33333333%}.layui-col-xl-offset8{margin-left:66.66666667%}.layui-col-xl-offset9{margin-left:75%}.layui-col-xl-offset10{margin-left:83.33333333%}.layui-col-xl-offset11{margin-left:91.66666667%}.layui-col-xl-offset12{margin-left:100%}}.layui-col-space1{margin:-.5px}.layui-col-space1>*{padding:.5px}.layui-col-space2{margin:-1px}.layui-col-space2>*{padding:1px}.layui-col-space4{margin:-2px}.layui-col-space4>*{padding:2px}.layui-col-space5{margin:-2.5px}.layui-col-space5>*{padding:2.5px}.layui-col-space6{margin:-3px}.layui-col-space6>*{padding:3px}.layui-col-space8{margin:-4px}.layui-col-space8>*{padding:4px}.layui-col-space10{margin:-5px}.layui-col-space10>*{padding:5px}.layui-col-space12{margin:-6px}.layui-col-space12>*{padding:6px}.layui-col-space14{margin:-7px}.layui-col-space14>*{padding:7px}.layui-col-space15{margin:-7.5px}.layui-col-space15>*{padding:7.5px}.layui-col-space16{margin:-8px}.layui-col-space16>*{padding:8px}.layui-col-space18{margin:-9px}.layui-col-space18>*{padding:9px}.layui-col-space20{margin:-10px}.layui-col-space20>*{padding:10px}.layui-col-space22{margin:-11px}.layui-col-space22>*{padding:11px}.layui-col-space24{margin:-12px}.layui-col-space24>*{padding:12px}.layui-col-space25{margin:-12.5px}.layui-col-space25>*{padding:12.5px}.layui-col-space26{margin:-13px}.layui-col-space26>*{padding:13px}.layui-col-space28{margin:-14px}.layui-col-space28>*{padding:14px}.layui-col-space30{margin:-15px}.layui-col-space30>*{padding:15px}.layui-col-space32{margin:-16px}.layui-col-space32>*{padding:16px}.layui-btn,.layui-input,.layui-select,.layui-textarea,.layui-upload-button{outline:0;-webkit-appearance:none;transition:all .3s;-webkit-transition:all .3s;box-sizing:border-box}.layui-elem-quote{margin-bottom:10px;padding:15px;line-height:1.8;border-left:5px solid #16b777;border-radius:0 2px 2px 0;background-color:#fafafa}.layui-quote-nm{border-style:solid;border-width:1px;border-left-width:5px;background:0 0}.layui-elem-field{margin-bottom:10px;padding:0;border-width:1px;border-style:solid}.layui-elem-field legend{margin-left:20px;padding:0 10px;font-size:20px}.layui-field-title{margin:16px 0;border-width:0;border-top-width:1px}.layui-field-box{padding:15px}.layui-field-title .layui-field-box{padding:10px 0}.layui-progress{position:relative;height:6px;border-radius:20px;background-color:#eee}.layui-progress-bar{position:absolute;left:0;top:0;width:0;max-width:100%;height:6px;border-radius:20px;text-align:right;background-color:#16b777;transition:all .3s;-webkit-transition:all .3s}.layui-progress-big,.layui-progress-big .layui-progress-bar{height:18px;line-height:18px}.layui-progress-text{position:relative;top:-20px;line-height:18px;font-size:12px;color:#5f5f5f}.layui-progress-big .layui-progress-text{position:static;padding:0 10px;color:#fff}.layui-collapse{border-width:1px;border-style:solid;border-radius:2px}.layui-colla-content,.layui-colla-item{border-top-width:1px;border-top-style:solid}.layui-colla-item:first-child{border-top:none}.layui-colla-title{position:relative;height:42px;line-height:42px;padding:0 15px 0 35px;color:#333;background-color:#fafafa;cursor:pointer;font-size:14px;overflow:hidden}.layui-colla-content{display:none;padding:10px 15px;line-height:1.6;color:#5f5f5f}.layui-colla-icon{position:absolute;left:15px;top:0;font-size:14px}.layui-card{margin-bottom:15px;border-radius:2px;background-color:#fff;box-shadow:0 1px 2px 0 rgba(0,0,0,.05)}.layui-card:last-child{margin-bottom:0}.layui-card-header{position:relative;height:42px;line-height:42px;padding:0 15px;border-bottom:1px solid #f8f8f8;color:#333;border-radius:2px 2px 0 0;font-size:14px}.layui-card-body{position:relative;padding:10px 15px;line-height:24px}.layui-card-body[pad15]{padding:15px}.layui-card-body[pad20]{padding:20px}.layui-card-body .layui-table{margin:5px 0}.layui-card .layui-tab{margin:0}.layui-panel{position:relative;border-width:1px;border-style:solid;border-radius:2px;box-shadow:1px 1px 4px rgb(0 0 0 / 8%);background-color:#fff;color:#5f5f5f}.layui-panel-window{position:relative;padding:15px;border-radius:0;border-top:5px solid #eee;background-color:#fff}.layui-auxiliar-moving{position:fixed;left:0;right:0;top:0;bottom:0;width:100%;height:100%;background:0 0;z-index:9999999999}.layui-scollbar-hide{overflow:hidden!important}.layui-bg-red{background-color:#ff5722!important;color:#fff!important}.layui-bg-orange{background-color:#ffb800!important;color:#fff!important}.layui-bg-green{background-color:#16baaa!important;color:#fff!important}.layui-bg-cyan{background-color:#2f4056!important;color:#fff!important}.layui-bg-blue{background-color:#1e9fff!important;color:#fff!important}.layui-bg-purple{background-color:#a233c6!important;color:#fff!important}.layui-bg-black{background-color:#2f363c!important;color:#fff!important}.layui-bg-gray{background-color:#fafafa!important;color:#5f5f5f!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:#eee}.layui-border{border-width:1px;border-style:solid;color:#5f5f5f!important}.layui-border-red{border-width:1px;border-style:solid;border-color:#ff5722!important;color:#ff5722!important}.layui-border-orange{border-width:1px;border-style:solid;border-color:#ffb800!important;color:#ffb800!important}.layui-border-green{border-width:1px;border-style:solid;border-color:#16baaa!important;color:#16baaa!important}.layui-border-cyan{border-width:1px;border-style:solid;border-color:#2f4056!important;color:#2f4056!important}.layui-border-blue{border-width:1px;border-style:solid;border-color:#1e9fff!important;color:#1e9fff!important}.layui-border-purple{border-width:1px;border-style:solid;border-color:#a233c6!important;color:#a233c6!important}.layui-border-black{border-width:1px;border-style:solid;border-color:#2f363c!important;color:#2f363c!important}.layui-timeline-item:before{background-color:#eee}.layui-text{line-height:1.8;font-size:14px}.layui-text h1,.layui-text h2,.layui-text h3,.layui-text h4,.layui-text h5,.layui-text h6{color:#3a3a3a}.layui-text h1{font-size:32px}.layui-text h2{font-size:24px}.layui-text h3{font-size:18px}.layui-text h4{font-size:16px}.layui-text h5{font-size:14px}.layui-text h6{font-size:13px}.layui-text ol,.layui-text ul{padding-left:15px}.layui-text ul li{margin-top:5px;list-style-type:disc}.layui-text ol li{margin-top:5px;list-style-type:decimal}.layui-text-em,.layui-word-aux{color:#999!important;padding-left:5px!important;padding-right:5px!important}.layui-text p{margin:15px 0}.layui-text p:first-child{margin-top:0}.layui-text p:last-child{margin-bottom:0}.layui-text a:not(.layui-btn){color:#01aaed}.layui-text a:not(.layui-btn):hover{text-decoration:underline}.layui-text blockquote:not(.layui-elem-quote){padding:5px 15px;border-left:5px solid #eee}.layui-text pre>code:not(.layui-code){padding:15px;font-family:Courier New,Lucida Console,Consolas;background-color:#fafafa}.layui-font-12{font-size:12px!important}.layui-font-13{font-size:13px!important}.layui-font-14{font-size:14px!important}.layui-font-16{font-size:16px!important}.layui-font-18{font-size:18px!important}.layui-font-20{font-size:20px!important}.layui-font-22{font-size:22px!important}.layui-font-24{font-size:24px!important}.layui-font-26{font-size:26px!important}.layui-font-28{font-size:28px!important}.layui-font-30{font-size:30px!important}.layui-font-32{font-size:32px!important}.layui-font-red{color:#ff5722!important}.layui-font-orange{color:#ffb800!important}.layui-font-green{color:#16baaa!important}.layui-font-cyan{color:#2f4056!important}.layui-font-blue{color:#01aaed!important}.layui-font-purple{color:#a233c6!important}.layui-font-black{color:#000!important}.layui-font-gray{color:#c2c2c2!important}.layui-btn{display:inline-block;vertical-align:middle;height:38px;line-height:38px;border:1px solid transparent;padding:0 18px;background-color:#16baaa;color:#fff;white-space:nowrap;text-align:center;font-size:14px;border-radius:2px;cursor:pointer;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.layui-btn:hover{opacity:.8;filter:alpha(opacity=80);color:#fff}.layui-btn:active{opacity:1;filter:alpha(opacity=100)}.layui-btn+.layui-btn{margin-left:10px}.layui-btn-container{word-spacing:-5px}.layui-btn-container .layui-btn{margin-right:10px;margin-bottom:10px;word-spacing:normal}.layui-btn-container .layui-btn+.layui-btn{margin-left:0}.layui-table .layui-btn-container .layui-btn{margin-bottom:9px}.layui-btn-radius{border-radius:100px}.layui-btn .layui-icon{padding:0 2px;vertical-align:middle\0;vertical-align:bottom}.layui-btn-primary{border-color:#d2d2d2;background:0 0;color:#5f5f5f}.layui-btn-primary:hover{border-color:#16baaa;color:#333}.layui-btn-normal{background-color:#1e9fff}.layui-btn-warm{background-color:#ffb800}.layui-btn-danger{background-color:#ff5722}.layui-btn-checked{background-color:#16b777}.layui-btn-disabled,.layui-btn-disabled:active,.layui-btn-disabled:hover{border-color:#eee!important;background-color:#fbfbfb!important;color:#d2d2d2!important;cursor:not-allowed!important;opacity:1}.layui-btn-lg{height:44px;line-height:44px;padding:0 25px;font-size:16px}.layui-btn-sm{height:30px;line-height:30px;padding:0 10px;font-size:12px}.layui-btn-xs{height:22px;line-height:22px;padding:0 5px;font-size:12px}.layui-btn-xs i{font-size:12px!important}.layui-btn-group{display:inline-block;vertical-align:middle;font-size:0}.layui-btn-group .layui-btn{margin-left:0!important;margin-right:0!important;border-left:1px solid rgba(255,255,255,.5);border-radius:0}.layui-btn-group .layui-btn-primary{border-left:none}.layui-btn-group .layui-btn-primary:hover{border-color:#d2d2d2;color:#16baaa}.layui-btn-group .layui-btn:first-child{border-left:none;border-radius:2px 0 0 2px}.layui-btn-group .layui-btn-primary:first-child{border-left:1px solid #d2d2d2}.layui-btn-group .layui-btn:last-child{border-radius:0 2px 2px 0}.layui-btn-group .layui-btn+.layui-btn{margin-left:0}.layui-btn-group+.layui-btn-group{margin-left:10px}.layui-btn-fluid{width:100%}.layui-input,.layui-select,.layui-textarea{height:38px;line-height:1.3;line-height:38px\9;border-width:1px;border-style:solid;background-color:#fff;color:rgba(0,0,0,.85);border-radius:2px}.layui-input::-webkit-input-placeholder,.layui-select::-webkit-input-placeholder,.layui-textarea::-webkit-input-placeholder{line-height:1.3}.layui-input,.layui-textarea{display:block;width:100%;padding-left:10px}.layui-input:hover,.layui-textarea:hover{border-color:#d2d2d2!important}.layui-input:focus,.layui-textarea:focus{border-color:#d2d2d2!important}.layui-textarea{position:relative;min-height:100px;height:auto;line-height:20px;padding:6px 10px;resize:vertical}.layui-select{padding:0 10px}.layui-form input[type=checkbox],.layui-form input[type=radio],.layui-form select{display:none}.layui-form [lay-ignore]{display:initial}.layui-form-item{position:relative;margin-bottom:15px;clear:both;*zoom:1}.layui-form-item:after{content:'\20';clear:both;*zoom:1;display:block;height:0}.layui-form-label{position:relative;float:left;display:block;padding:9px 15px;width:80px;font-weight:400;line-height:20px;text-align:right}.layui-form-label-col{display:block;float:none;padding:9px 0;line-height:20px;text-align:left}.layui-form-item .layui-inline{margin-bottom:5px;margin-right:10px}.layui-input-block,.layui-input-inline{position:relative}.layui-input-block{margin-left:110px;min-height:36px}.layui-input-inline{display:inline-block;vertical-align:middle}.layui-form-item .layui-input-inline{float:left;width:190px;margin-right:10px}.layui-form-text .layui-input-inline{width:auto}.layui-form-mid{position:relative;float:left;display:block;padding:9px 0!important;line-height:20px;margin-right:10px}.layui-form-danger+.layui-form-select .layui-input,.layui-form-danger:focus{border-color:#ff5722!important}.layui-input-prefix,.layui-input-split,.layui-input-suffix,.layui-input-suffix .layui-input-affix{position:absolute;right:0;top:0;padding:0 10px;width:35px;height:100%;text-align:center;transition:all .3s;box-sizing:border-box}.layui-input-prefix{left:0;border-radius:2px 0 0 2px}.layui-input-suffix{right:0;border-radius:0 2px 2px 0}.layui-input-split{border-width:1px;border-style:solid}.layui-input-prefix .layui-icon,.layui-input-split .layui-icon,.layui-input-suffix .layui-icon{position:relative;font-size:16px;color:#5f5f5f;transition:all .3s}.layui-input-group{position:relative;display:table;box-sizing:border-box}.layui-input-group>*{display:table-cell;vertical-align:middle;position:relative}.layui-input-group .layui-input{padding-right:15px}.layui-input-group .layui-input-prefix{width:auto;border-right:0}.layui-input-group .layui-input-suffix{width:auto;border-left:0}.layui-input-group .layui-input-split{white-space:nowrap}.layui-input-wrap{position:relative;line-height:38px}.layui-input-wrap .layui-input{padding-right:35px}.layui-input-wrap .layui-input::-ms-clear,.layui-input-wrap .layui-input::-ms-reveal{display:none}.layui-input-wrap .layui-input-prefix+.layui-input,.layui-input-wrap .layui-input-prefix~* .layui-input{padding-left:35px}.layui-input-wrap .layui-input-split+.layui-input,.layui-input-wrap .layui-input-split~* .layui-input{padding-left:45px}.layui-input-wrap .layui-input-prefix~.layui-form-select{position:static}.layui-input-wrap .layui-input-prefix,.layui-input-wrap .layui-input-split,.layui-input-wrap .layui-input-suffix{pointer-events:none}.layui-input-wrap .layui-input:focus+.layui-input-split{border-color:#d2d2d2}.layui-input-wrap .layui-input-prefix.layui-input-split{border-width:0;border-right-width:1px}.layui-input-affix{line-height:38px}.layui-input-suffix .layui-input-affix{right:auto;left:-35px}.layui-input-affix .layui-icon{color:rgba(0,0,0,.8);pointer-events:auto!important;cursor:pointer}.layui-input-affix .layui-icon-clear{color:rgba(0,0,0,.3)}.layui-input-affix .layui-icon:hover{color:rgba(0,0,0,.6)}.layui-form-select{position:relative;color:#5f5f5f}.layui-form-select .layui-input{padding-right:30px;cursor:pointer}.layui-form-select .layui-edge{position:absolute;right:10px;top:50%;margin-top:-3px;cursor:pointer;border-width:6px;border-top-color:#c2c2c2;border-top-style:solid;transition:all .3s;-webkit-transition:all .3s}.layui-form-select dl{display:none;position:absolute;left:0;top:42px;padding:5px 0;z-index:899;min-width:100%;border:1px solid #eee;max-height:300px;overflow-y:auto;background-color:#fff;border-radius:2px;box-shadow:1px 1px 4px rgb(0 0 0 / 8%);box-sizing:border-box}.layui-form-select dl dd,.layui-form-select dl dt{padding:0 10px;line-height:36px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.layui-form-select dl dt{font-size:12px;color:#999}.layui-form-select dl dd{cursor:pointer}.layui-form-select dl dd:hover{background-color:#f8f8f8;-webkit-transition:.5s all;transition:.5s all}.layui-form-select .layui-select-group dd{padding-left:20px}.layui-form-select dl dd.layui-select-tips{padding-left:10px!important;color:#999}.layui-form-select dl dd.layui-this{background-color:#f8f8f8;color:#16b777;font-weight:700}.layui-form-select dl dd.layui-disabled{background-color:#fff}.layui-form-selected dl{display:block}.layui-form-selected .layui-edge{margin-top:-9px;-webkit-transform:rotate(180deg);transform:rotate(180deg)}.layui-form-selected .layui-edge{margin-top:-3px\0}:root .layui-form-selected .layui-edge{margin-top:-9px\0/IE9}.layui-form-selectup dl{top:auto;bottom:42px}.layui-select-none{margin:5px 0;text-align:center;color:#999}.layui-select-disabled .layui-disabled{border-color:#eee!important}.layui-select-disabled .layui-edge{border-top-color:#d2d2d2}.layui-form-checkbox{position:relative;display:inline-block;vertical-align:middle;height:30px;line-height:30px;margin-right:10px;padding-right:30px;background-color:#fff;cursor:pointer;font-size:0;-webkit-transition:.1s linear;transition:.1s linear;box-sizing:border-box}.layui-form-checkbox>*{display:inline-block;vertical-align:middle}.layui-form-checkbox>div{padding:0 11px;font-size:14px;border-radius:2px 0 0 2px;background-color:#d2d2d2;color:#fff;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.layui-form-checkbox:hover>div{background-color:#c2c2c2}.layui-form-checkbox>i{position:absolute;right:0;top:0;width:30px;height:100%;border:1px solid #d2d2d2;border-left:none;border-radius:0 2px 2px 0;color:#fff;color:rgba(255,255,255,0);font-size:20px;text-align:center;box-sizing:border-box}.layui-form-checkbox:hover>i{border-color:#c2c2c2;color:#c2c2c2}.layui-form-checked,.layui-form-checked:hover{border-color:#16b777}.layui-form-checked:hover>div,.layui-form-checked>div{background-color:#16b777}.layui-form-checked:hover>i,.layui-form-checked>i{color:#16b777}.layui-form-item .layui-form-checkbox{margin-top:4px}.layui-form-checkbox.layui-checkbox-disabled>div{background-color:#eee!important}.layui-form [lay-checkbox]{display:none}.layui-form-checkbox[lay-skin=primary]{height:auto!important;line-height:normal!important;min-width:18px;min-height:18px;border:none!important;margin-right:0;padding-left:24px;padding-right:0;background:0 0}.layui-form-checkbox[lay-skin=primary]>div{margin-top:-1px;padding-left:0;padding-right:15px;line-height:18px;background:0 0;color:#5f5f5f}.layui-form-checkbox[lay-skin=primary]>i{right:auto;left:0;width:16px;height:16px;line-height:14px;border:1px solid #d2d2d2;font-size:12px;border-radius:2px;background-color:#fff;-webkit-transition:.1s linear;transition:.1s linear}.layui-form-checkbox[lay-skin=primary]:hover>i{border-color:#16b777;color:#fff}.layui-form-checked[lay-skin=primary]>i{border-color:#16b777!important;background-color:#16b777;color:#fff}.layui-checkbox-disabled[lay-skin=primary]>div{background:0 0!important}.layui-form-checked.layui-checkbox-disabled[lay-skin=primary]>i{background:#eee!important;border-color:#eee!important}.layui-checkbox-disabled[lay-skin=primary]:hover>i{border-color:#d2d2d2}.layui-form-item .layui-form-checkbox[lay-skin=primary]{margin-top:10px}.layui-form-checkbox[lay-skin=primary]>.layui-icon-indeterminate{border-color:#16b777}.layui-form-checkbox[lay-skin=primary]>.layui-icon-indeterminate:before{content:'';display:inline-block;vertical-align:middle;position:relative;width:50%;height:1px;margin:-1px auto 0;background-color:#16b777}.layui-form-switch{position:relative;display:inline-block;vertical-align:middle;height:24px;line-height:22px;min-width:44px;padding:0 5px;margin-top:8px;border:1px solid #d2d2d2;border-radius:20px;cursor:pointer;box-sizing:border-box;background-color:#fff;-webkit-transition:.1s linear;transition:.1s linear}.layui-form-switch>i{position:absolute;left:5px;top:3px;width:16px;height:16px;border-radius:20px;background-color:#d2d2d2;-webkit-transition:.1s linear;transition:.1s linear}.layui-form-switch>div{position:relative;top:0;margin-left:21px;padding:0!important;text-align:center!important;color:#999!important;font-style:normal!important;font-size:12px}.layui-form-onswitch{border-color:#16b777;background-color:#16b777}.layui-form-onswitch>i{left:100%;margin-left:-21px;background-color:#fff}.layui-form-onswitch>div{margin-left:0;margin-right:21px;color:#fff!important}.layui-checkbox-disabled{border-color:#eee!important}.layui-checkbox-disabled>div{color:#c2c2c2!important}.layui-checkbox-disabled>i{border-color:#eee!important}.layui-checkbox-disabled:hover>i{color:#fff!important}.layui-form-radio{display:inline-block;vertical-align:middle;line-height:28px;margin:6px 10px 0 0;padding-right:10px;cursor:pointer;font-size:0}.layui-form-radio>*{display:inline-block;vertical-align:middle;font-size:14px}.layui-form-radio>i{margin-right:8px;font-size:22px;color:#c2c2c2}.layui-form-radio:hover>*,.layui-form-radioed,.layui-form-radioed>i{color:#16b777}.layui-radio-disabled>i{color:#eee!important}.layui-radio-disabled>*{color:#c2c2c2!important}.layui-form [lay-radio]{display:none}.layui-form-pane .layui-form-label{width:110px;padding:8px 15px;height:38px;line-height:20px;border-width:1px;border-style:solid;border-radius:2px 0 0 2px;text-align:center;background-color:#fafafa;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;box-sizing:border-box}.layui-form-pane .layui-input-inline{margin-left:-1px}.layui-form-pane .layui-input-block{margin-left:110px;left:-1px}.layui-form-pane .layui-input{border-radius:0 2px 2px 0}.layui-form-pane .layui-form-text .layui-form-label{float:none;width:100%;border-radius:2px;box-sizing:border-box;text-align:left}.layui-form-pane .layui-form-text .layui-input-inline{display:block;margin:0;top:-1px;clear:both}.layui-form-pane .layui-form-text .layui-input-block{margin:0;left:0;top:-1px}.layui-form-pane .layui-form-text .layui-textarea{min-height:100px;border-radius:0 0 2px 2px}.layui-form-pane .layui-form-checkbox{margin:4px 0 4px 10px}.layui-form-pane .layui-form-radio,.layui-form-pane .layui-form-switch{margin-top:6px;margin-left:10px}.layui-form-pane .layui-form-item[pane]{position:relative;border-width:1px;border-style:solid}.layui-form-pane .layui-form-item[pane] .layui-form-label{position:absolute;left:0;top:0;height:100%;border-width:0;border-right-width:1px}.layui-form-pane .layui-form-item[pane] .layui-input-inline{margin-left:110px}@media screen and (max-width:450px){.layui-form-item .layui-form-label{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.layui-form-item .layui-inline{display:block;margin-right:0;margin-bottom:20px;clear:both}.layui-form-item .layui-inline:after{content:'\20';clear:both;display:block;height:0}.layui-form-item .layui-input-inline{display:block;float:none;left:-3px;width:auto!important;margin:0 0 10px 112px}.layui-form-item .layui-input-inline+.layui-form-mid{margin-left:110px;top:-5px;padding:0}.layui-form-item .layui-form-checkbox{margin-right:5px;margin-bottom:5px}}.layui-laypage{display:inline-block;*display:inline;*zoom:1;vertical-align:middle;margin:10px 0;font-size:0}.layui-laypage>a:first-child,.layui-laypage>a:first-child em{border-radius:2px 0 0 2px}.layui-laypage>a:last-child,.layui-laypage>a:last-child em{border-radius:0 2px 2px 0}.layui-laypage>:first-child{margin-left:0!important}.layui-laypage>:last-child{margin-right:0!important}.layui-laypage a,.layui-laypage button,.layui-laypage input,.layui-laypage select,.layui-laypage span{border:1px solid #eee}.layui-laypage a,.layui-laypage span{display:inline-block;*display:inline;*zoom:1;vertical-align:middle;padding:0 15px;height:28px;line-height:28px;margin:0 -1px 5px 0;background-color:#fff;color:#333;font-size:12px}.layui-laypage a[data-page]{color:#333}.layui-laypage a{text-decoration:none!important;cursor:pointer}.layui-laypage a:hover{color:#16baaa}.layui-laypage em{font-style:normal}.layui-laypage .layui-laypage-spr{color:#999;font-weight:700}.layui-laypage .layui-laypage-curr{position:relative}.layui-laypage .layui-laypage-curr em{position:relative;color:#fff}.layui-laypage .layui-laypage-curr .layui-laypage-em{position:absolute;left:-1px;top:-1px;padding:1px;width:100%;height:100%;background-color:#16baaa}.layui-laypage-em{border-radius:2px}.layui-laypage-next em,.layui-laypage-prev em{font-family:Sim sun;font-size:16px}.layui-laypage .layui-laypage-count,.layui-laypage .layui-laypage-limits,.layui-laypage .layui-laypage-refresh,.layui-laypage .layui-laypage-skip{margin-left:10px;margin-right:10px;padding:0;border:none}.layui-laypage .layui-laypage-limits,.layui-laypage .layui-laypage-refresh{vertical-align:top}.layui-laypage .layui-laypage-refresh i{font-size:18px;cursor:pointer}.layui-laypage select{height:22px;padding:3px;border-radius:2px;cursor:pointer}.layui-laypage .layui-laypage-skip{height:30px;line-height:30px;color:#999}.layui-laypage button,.layui-laypage input{height:30px;line-height:30px;border-radius:2px;vertical-align:top;background-color:#fff;box-sizing:border-box}.layui-laypage input{display:inline-block;width:40px;margin:0 10px;padding:0 3px;text-align:center}.layui-laypage input:focus,.layui-laypage select:focus{border-color:#16baaa!important}.layui-laypage button{margin-left:10px;padding:0 10px;cursor:pointer}.layui-flow-more{margin:10px 0;text-align:center;color:#999;font-size:14px;clear:both}.layui-flow-more a{height:32px;line-height:32px}.layui-flow-more a *{display:inline-block;vertical-align:top}.layui-flow-more a cite{padding:0 20px;border-radius:3px;background-color:#eee;color:#333;font-style:normal}.layui-flow-more a cite:hover{opacity:.8}.layui-flow-more a i{font-size:30px;color:#737383}.layui-table{width:100%;margin:10px 0;background-color:#fff;color:#5f5f5f}.layui-table tr{transition:all .3s;-webkit-transition:all .3s}.layui-table th{text-align:left;font-weight:600}.layui-table-mend{background-color:#fff}.layui-table-click,.layui-table-hover,.layui-table[lay-even] tbody tr:nth-child(even){background-color:#f8f8f8}.layui-table-checked{background-color:#dbfbf0}.layui-table-checked.layui-table-click,.layui-table-checked.layui-table-hover{background-color:#abf8dd}.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-width:1px;border-style:solid;border-color:#eee}.layui-table td,.layui-table th{position:relative;padding:9px 15px;min-height:20px;line-height:20px;font-size:14px}.layui-table[lay-skin=line] td,.layui-table[lay-skin=line] th{border-width:0;border-bottom-width:1px}.layui-table[lay-skin=row] td,.layui-table[lay-skin=row] th{border-width:0;border-right-width:1px}.layui-table[lay-skin=nob] td,.layui-table[lay-skin=nob] th{border:none}.layui-table img{max-width:100px}.layui-table[lay-size=lg] td,.layui-table[lay-size=lg] th{padding-top:15px;padding-right:30px;padding-bottom:15px;padding-left:30px}.layui-table-view .layui-table[lay-size=lg] .layui-table-cell{height:50px;line-height:40px}.layui-table[lay-size=sm] td,.layui-table[lay-size=sm] th{padding-top:5px;padding-right:10px;padding-bottom:5px;padding-left:10px;font-size:12px}.layui-table-view .layui-table[lay-size=sm] .layui-table-cell{height:30px;line-height:20px;padding-top:5px;padding-left:11px;padding-right:11px}.layui-table[lay-data],.layui-table[lay-options]{display:none}.layui-table-box{position:relative;overflow:hidden}.layui-table-view{clear:both}.layui-table-view .layui-table{position:relative;width:auto;margin:0;border:0;border-collapse:separate}.layui-table-view .layui-table[lay-skin=line]{border-width:0;border-right-width:1px}.layui-table-view .layui-table[lay-skin=row]{border-width:0;border-bottom-width:1px}.layui-table-view .layui-table td,.layui-table-view .layui-table th{padding:0;border-top:none;border-left:none}.layui-table-view .layui-table th.layui-unselect .layui-table-cell span{cursor:pointer}.layui-table-view .layui-table td{cursor:default}.layui-table-view .layui-table td[data-edit]{cursor:text}.layui-table-view .layui-table td[data-edit]:hover:after{position:absolute;left:0;top:0;width:100%;height:100%;box-sizing:border-box;border:1px solid #16b777;pointer-events:none;content:""}.layui-table-view .layui-form-checkbox[lay-skin=primary] i{width:18px;height:18px;line-height:16px}.layui-table-view .layui-form-radio{line-height:0;padding:0}.layui-table-view .layui-form-radio>i{margin:0;font-size:20px}.layui-table-init{position:absolute;left:0;top:0;width:100%;height:100%;text-align:center;z-index:199}.layui-table-init .layui-icon{position:absolute;left:50%;top:50%;margin:-15px 0 0 -15px;font-size:30px;color:#c2c2c2}.layui-table-header{border-width:0;border-bottom-width:1px;overflow:hidden}.layui-table-header .layui-table{margin-bottom:-1px}.layui-table-column{position:relative;width:100%;min-height:41px;padding:8px 16px;border-width:0;border-bottom-width:1px}.layui-table-column .layui-btn-container{margin-bottom:-8px}.layui-table-column .layui-btn-container .layui-btn{margin-right:8px;margin-bottom:8px}.layui-table-tool .layui-inline[lay-event]{position:relative;width:26px;height:26px;padding:5px;line-height:16px;margin-right:10px;text-align:center;color:#333;border:1px solid #ccc;cursor:pointer;-webkit-transition:.5s all;transition:.5s all}.layui-table-tool .layui-inline[lay-event]:hover{border:1px solid #999}.layui-table-tool-temp{padding-right:120px}.layui-table-tool-self{position:absolute;right:17px;top:10px}.layui-table-tool .layui-table-tool-self .layui-inline[lay-event]{margin:0 0 0 10px}.layui-table-tool-panel{position:absolute;top:29px;left:-1px;z-index:399;padding:5px 0!important;min-width:150px;min-height:40px;border:1px solid #d2d2d2;text-align:left;overflow-y:auto;background-color:#fff;box-shadow:0 2px 4px rgba(0,0,0,.12)}.layui-table-tool-panel li{padding:0 10px;margin:0!important;line-height:30px;list-style-type:none!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-transition:.5s all;transition:.5s all}.layui-table-tool-panel li .layui-form-checkbox[lay-skin=primary]{width:100%}.layui-table-tool-panel li:hover{background-color:#f8f8f8}.layui-table-tool-panel li .layui-form-checkbox[lay-skin=primary]{padding-left:28px}.layui-table-tool-panel li .layui-form-checkbox[lay-skin=primary] i{position:absolute;left:0;top:0}.layui-table-tool-panel li .layui-form-checkbox[lay-skin=primary] span{padding:0}.layui-table-tool .layui-table-tool-self .layui-table-tool-panel{left:auto;right:-1px}.layui-table-col-set{position:absolute;right:0;top:0;width:20px;height:100%;border-width:0;border-left-width:1px;background-color:#fff}.layui-table-sort{width:10px;height:20px;margin-left:5px;cursor:pointer!important}.layui-table-sort .layui-edge{position:absolute;left:5px;border-width:5px}.layui-table-sort .layui-table-sort-asc{top:3px;border-top:none;border-bottom-style:solid;border-bottom-color:#b2b2b2}.layui-table-sort .layui-table-sort-asc:hover{border-bottom-color:#5f5f5f}.layui-table-sort .layui-table-sort-desc{bottom:5px;border-bottom:none;border-top-style:solid;border-top-color:#b2b2b2}.layui-table-sort .layui-table-sort-desc:hover{border-top-color:#5f5f5f}.layui-table-sort[lay-sort=asc] .layui-table-sort-asc{border-bottom-color:#000}.layui-table-sort[lay-sort=desc] .layui-table-sort-desc{border-top-color:#000}.layui-table-cell{height:38px;line-height:28px;padding:6px 15px;position:relative;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;box-sizing:border-box}.layui-table-cell .layui-form-checkbox[lay-skin=primary]{top:-1px;padding:0}.layui-table-cell .layui-table-link{color:#01aaed}.layui-table-cell .layui-btn{vertical-align:inherit}.layui-table-cell[align=center]{-webkit-box-pack:center}.layui-table-cell[align=right]{-webkit-box-pack:end}.laytable-cell-checkbox,.laytable-cell-numbers,.laytable-cell-radio,.laytable-cell-space{text-align:center;-webkit-box-pack:center}.layui-table-body{position:relative;overflow:auto;margin-right:-1px;margin-bottom:-1px}.layui-table-body .layui-none{line-height:26px;padding:30px 15px;text-align:center;color:#999}.layui-table-fixed{position:absolute;left:0;top:0;z-index:101}.layui-table-fixed .layui-table-body{overflow:hidden}.layui-table-fixed-l{box-shadow:1px 0 8px rgba(0,0,0,.08)}.layui-table-fixed-r{left:auto;right:-1px;border-width:0;border-left-width:1px;box-shadow:-1px 0 8px rgba(0,0,0,.08)}.layui-table-fixed-r .layui-table-header{position:relative;overflow:visible}.layui-table-mend{position:absolute;right:-49px;top:0;height:100%;width:50px;border-width:0;border-left-width:1px}.layui-table-tool{position:relative;width:100%;min-height:50px;line-height:30px;padding:10px 15px;border-width:0;border-bottom-width:1px}.layui-table-tool .layui-btn-container{margin-bottom:-10px}.layui-table-total{margin-bottom:-1px;border-width:0;border-top-width:1px;overflow:hidden}.layui-table-page{border-width:0;border-top-width:1px;margin-bottom:-1px;white-space:nowrap;overflow:hidden}.layui-table-page>div{height:26px}.layui-table-page .layui-laypage{margin:0}.layui-table-page .layui-laypage a,.layui-table-page .layui-laypage span{height:26px;line-height:26px;margin-bottom:10px;border:none;background:0 0}.layui-table-page .layui-laypage a,.layui-table-page .layui-laypage span.layui-laypage-curr{padding:0 12px}.layui-table-page .layui-laypage span{margin-left:0;padding:0}.layui-table-page .layui-laypage .layui-laypage-prev{margin-left:-11px!important}.layui-table-page .layui-laypage .layui-laypage-curr .layui-laypage-em{left:0;top:0;padding:0}.layui-table-page .layui-laypage button,.layui-table-page .layui-laypage input{height:26px;line-height:26px}.layui-table-page .layui-laypage input{width:40px}.layui-table-page .layui-laypage button{padding:0 10px}.layui-table-page select{height:18px}.layui-table-pagebar{float:right;line-height:23px}.layui-table-pagebar .layui-btn-sm{margin-top:-1px}.layui-table-pagebar .layui-btn-xs{margin-top:2px}.layui-table-view select[lay-ignore]{display:inline-block}.layui-table-patch .layui-table-cell{padding:0;width:30px}.layui-table-edit{position:absolute;left:0;top:0;z-index:189;min-width:100%;min-height:100%;padding:5px 14px;border-radius:0;box-shadow:1px 1px 20px rgba(0,0,0,.15);background-color:#fff}.layui-table-edit:focus{border-color:#16b777!important}input.layui-input.layui-table-edit{height:100%}select.layui-table-edit{padding:0 0 0 10px;border-color:#d2d2d2}.layui-table-view .layui-form-checkbox,.layui-table-view .layui-form-radio,.layui-table-view .layui-form-switch{top:0;margin:0}.layui-table-view .layui-form-checkbox{top:-1px;height:26px;line-height:26px}.layui-table-view .layui-form-checkbox i{height:26px}.layui-table-grid .layui-table-cell{overflow:visible}.layui-table-grid-down{position:absolute;top:0;right:0;width:26px;height:100%;padding:5px 0;border-width:0;border-left-width:1px;text-align:center;background-color:#fff;color:#999;cursor:pointer}.layui-table-grid-down .layui-icon{position:absolute;top:50%;left:50%;margin:-8px 0 0 -8px}.layui-table-grid-down:hover{background-color:#fbfbfb}body .layui-table-tips .layui-layer-content{background:0 0;padding:0;box-shadow:0 1px 6px rgba(0,0,0,.12)}.layui-table-tips-main{margin:-49px 0 0 -1px;max-height:150px;padding:8px 15px;font-size:14px;overflow-y:scroll;background-color:#fff;color:#5f5f5f}.layui-table-tips-c{position:absolute;right:-3px;top:-13px;width:20px;height:20px;padding:3px;cursor:pointer;background-color:#5f5f5f;border-radius:50%;color:#fff}.layui-table-tips-c:hover{background-color:#777}.layui-table-tips-c:before{position:relative;right:-2px}.layui-table-tree-nodeIcon{max-width:20px}.layui-table-tree-nodeIcon>*{width:100%}.layui-table-tree-flexIcon,.layui-table-tree-nodeIcon{margin-right:2px}.layui-table-tree-flexIcon{cursor:pointer}.layui-upload-file{display:none!important;opacity:.01;filter:Alpha(opacity=1)}.layui-upload-list{margin:11px 0}.layui-upload-choose{max-width:200px;padding:0 10px;color:#999;font-size:14px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.layui-upload-drag{position:relative;display:inline-block;padding:30px;border:1px dashed #e2e2e2;background-color:#fff;text-align:center;cursor:pointer;color:#999}.layui-upload-drag .layui-icon{font-size:50px;color:#16baaa}.layui-upload-drag[lay-over]{border-color:#16baaa}.layui-upload-form{display:inline-block}.layui-upload-iframe{position:absolute;width:0;height:0;border:0;visibility:hidden}.layui-upload-wrap{position:relative;display:inline-block;vertical-align:middle}.layui-upload-wrap .layui-upload-file{display:block!important;position:absolute;left:0;top:0;z-index:10;font-size:100px;width:100%;height:100%;opacity:.01;filter:Alpha(opacity=1);cursor:pointer}.layui-btn-container .layui-upload-choose{padding-left:0}.layui-menu{position:relative;margin:5px 0;background-color:#fff;box-sizing:border-box}.layui-menu *{box-sizing:border-box}.layui-menu li,.layui-menu-body-title,.layui-menu-body-title a{padding:5px 15px;color:initial}.layui-menu li{position:relative;margin:1px 0;line-height:26px;color:rgba(0,0,0,.8);font-size:14px;white-space:nowrap;cursor:pointer;transition:all .3s}.layui-menu li:hover{background-color:#f8f8f8}.layui-menu li.layui-disabled,.layui-menu li.layui-disabled *{background:0 0!important;color:#d2d2d2!important;cursor:not-allowed!important}.layui-menu-item-parent:hover>.layui-menu-body-panel{display:block;animation-name:layui-fadein;animation-duration:.3s;animation-fill-mode:both;animation-delay:.2s}.layui-menu-item-group>.layui-menu-body-title,.layui-menu-item-parent>.layui-menu-body-title{padding-right:38px}.layui-menu .layui-menu-item-divider:hover,.layui-menu .layui-menu-item-group:hover,.layui-menu .layui-menu-item-none:hover{background:0 0;cursor:default}.layui-menu .layui-menu-item-group>ul{margin:5px 0 -5px}.layui-menu .layui-menu-item-group>.layui-menu-body-title{color:rgba(0,0,0,.35);user-select:none}.layui-menu .layui-menu-item-none{color:rgba(0,0,0,.35);cursor:default}.layui-menu .layui-menu-item-none{text-align:center}.layui-menu .layui-menu-item-divider{margin:5px 0;padding:0;height:0;line-height:0;border-bottom:1px solid #eee;overflow:hidden}.layui-menu .layui-menu-item-down:hover,.layui-menu .layui-menu-item-up:hover{cursor:pointer}.layui-menu .layui-menu-item-up>.layui-menu-body-title{color:rgba(0,0,0,.8)}.layui-menu .layui-menu-item-up>ul{visibility:hidden;height:0;overflow:hidden}.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:#000}.layui-menu .layui-menu-item-down>ul{visibility:visible;height:auto}.layui-menu .layui-menu-item-checked,.layui-menu .layui-menu-item-checked2{background-color:#f8f8f8!important;color:#16b777}.layui-menu .layui-menu-item-checked a,.layui-menu .layui-menu-item-checked2 a{color:#16b777}.layui-menu .layui-menu-item-checked:after{position:absolute;right:-1px;top:0;bottom:0;border-right:3px solid #16b777;content:""}.layui-menu-body-title{position:relative;margin:-5px -15px;overflow:hidden;text-overflow:ellipsis}.layui-menu-body-title a{display:block;margin:-5px -15px;color:rgba(0,0,0,.8)}.layui-menu-body-title a:hover{transition:all .3s}.layui-menu-body-title>.layui-icon{position:absolute;right:15px;top:50%;margin-top:-6px;line-height:normal;font-size:14px}.layui-menu-body-title>.layui-icon:hover{transition:all .3s}.layui-menu-body-title>.layui-icon-right{right:14px}.layui-menu-body-panel{display:none;position:absolute;top:-7px;left:100%;z-index:1000;margin-left:13px;padding:5px 0}.layui-menu-body-panel:before{content:"";position:absolute;width:20px;left:-16px;top:0;bottom:0}.layui-menu-body-panel-left{left:auto;right:100%;margin:0 13px 0}.layui-menu-body-panel-left:before{left:auto;right:-16px}.layui-menu-lg li{line-height:32px}.layui-menu-lg .layui-menu-body-title a:hover,.layui-menu-lg li:hover{background:0 0;color:#16b777}.layui-menu-lg li .layui-menu-body-panel{margin-left:14px}.layui-menu-lg li .layui-menu-body-panel-left{margin:0 15px 0}.layui-dropdown{position:absolute;left:-999999px;top:-999999px;z-index:77777777;margin:5px 0;min-width:100px}.layui-dropdown:before{content:"";position:absolute;width:100%;height:6px;left:0;top:-6px}.layui-dropdown-shade{top:0;left:0;width:100%;height:100%;_height:expression(document.body.offsetHeight+"px");position:fixed;_position:absolute;pointer-events:auto}.layui-nav{position:relative;padding:0 15px;background-color:#2f363c;color:#fff;border-radius:2px;font-size:0;box-sizing:border-box}.layui-nav *{font-size:14px}.layui-nav .layui-nav-item{position:relative;display:inline-block;*display:inline;*zoom:1;margin-top:0;list-style:none;vertical-align:middle;line-height:60px}.layui-nav .layui-nav-item a{display:block;padding:0 20px;color:#fff;color:rgba(255,255,255,.7);transition:all .3s;-webkit-transition:all .3s}.layui-nav .layui-this:after,.layui-nav-bar{content:"";position:absolute;left:0;top:0;width:0;height:3px;background-color:#16b777;transition:all .2s;-webkit-transition:all .2s;pointer-events:none}.layui-nav-bar{z-index:1000}.layui-nav[lay-bar=disabled] .layui-nav-bar{display:none}.layui-nav .layui-nav-item a:hover,.layui-nav .layui-this a{color:#fff;text-decoration:none}.layui-nav .layui-this:after{top:auto;bottom:0;width:100%}.layui-nav-img{width:30px;height:30px;margin-right:10px;border-radius:50%}.layui-nav .layui-nav-more{position:absolute;top:0;right:3px;left:auto!important;margin-top:0;font-size:12px;cursor:pointer;transition:all .2s;-webkit-transition:all .2s}.layui-nav .layui-nav-mored,.layui-nav-itemed>a .layui-nav-more{transform:rotate(180deg)}.layui-nav-child{display:none;position:absolute;left:0;top:65px;min-width:100%;line-height:36px;padding:5px 0;box-shadow:0 2px 4px rgba(0,0,0,.12);border:1px solid #eee;background-color:#fff;z-index:100;border-radius:2px;white-space:nowrap;box-sizing:border-box}.layui-nav .layui-nav-child a{color:#5f5f5f;color:rgba(0,0,0,.8)}.layui-nav .layui-nav-child a:hover{background-color:#f8f8f8;color:rgba(0,0,0,.8)}.layui-nav-child dd{margin:1px 0;position:relative}.layui-nav-child dd.layui-this{background-color:#f8f8f8;color:#000}.layui-nav-child dd.layui-this:after{display:none}.layui-nav-child-r{left:auto;right:0}.layui-nav-child-c{text-align:center}.layui-nav.layui-nav-tree{width:200px;padding:0}.layui-nav-tree .layui-nav-item{display:block;width:100%;line-height:40px}.layui-nav-tree .layui-nav-item a{position:relative;height:40px;line-height:40px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.layui-nav-tree .layui-nav-item>a{padding-top:5px;padding-bottom:5px}.layui-nav-tree .layui-nav-more{right:15px}.layui-nav-tree .layui-nav-item>a .layui-nav-more{padding:5px 0}.layui-nav-tree .layui-nav-bar{width:5px;height:0}.layui-side .layui-nav-tree .layui-nav-bar{width:2px}.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:#16baaa;color:#fff}.layui-nav-tree .layui-this:after{display:none}.layui-nav-itemed>a,.layui-nav-tree .layui-nav-title a,.layui-nav-tree .layui-nav-title a:hover{color:#fff!important}.layui-nav-tree .layui-nav-bar{background-color:#16baaa}.layui-nav-tree .layui-nav-child{position:relative;z-index:0;top:0;border:none;box-shadow:none}.layui-nav-tree .layui-nav-child dd{margin:0}.layui-nav-tree .layui-nav-child a{color:#fff;color:rgba(255,255,255,.7)}.layui-nav-tree .layui-nav-child,.layui-nav-tree .layui-nav-child a:hover{background:0 0;color:#fff}.layui-nav-itemed>.layui-nav-child{display:block;background-color:rgba(0,0,0,.3)!important}.layui-nav-itemed>.layui-nav-child>.layui-this>.layui-nav-child{display:block}.layui-nav-side{position:fixed;top:0;bottom:0;left:0;overflow-x:hidden;z-index:999}.layui-nav-tree.layui-bg-gray a,.layui-nav.layui-bg-gray .layui-nav-item a{color:rgba(0,0,0,.8)}.layui-nav-tree.layui-bg-gray{padding:6px 0}.layui-nav-tree.layui-bg-gray .layui-nav-itemed>a{color:#000!important}.layui-nav.layui-bg-gray .layui-this a{color:#16b777}.layui-nav-tree.layui-bg-gray .layui-nav-itemed>.layui-nav-child{padding-left:11px;background:0 0!important}.layui-nav-tree.layui-bg-gray .layui-nav-item>a{padding-top:0;padding-bottom:0}.layui-nav-tree.layui-bg-gray .layui-nav-item>a .layui-nav-more{padding:0}.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{background:0 0!important;color:#16b777!important;font-weight:700}.layui-nav-tree.layui-bg-gray .layui-nav-bar{background-color:#16b777}.layui-breadcrumb{visibility:hidden;font-size:0}.layui-breadcrumb>*{font-size:14px}.layui-breadcrumb a{color:#999!important}.layui-breadcrumb a:hover{color:#16b777!important}.layui-breadcrumb a cite{color:#5f5f5f;font-style:normal}.layui-breadcrumb span[lay-separator]{margin:0 10px;color:#999}.layui-tab{margin:10px 0;text-align:left!important}.layui-tab[overflow]>.layui-tab-title{overflow:hidden}.layui-tab .layui-tab-title{position:relative;left:0;height:40px;white-space:nowrap;font-size:0;border-bottom-width:1px;border-bottom-style:solid;transition:all .2s;-webkit-transition:all .2s}.layui-tab .layui-tab-title li{display:inline-block;*display:inline;*zoom:1;vertical-align:middle;font-size:14px;transition:all .2s;-webkit-transition:all .2s}.layui-tab .layui-tab-title li{position:relative;line-height:40px;min-width:65px;margin:0;padding:0 15px;text-align:center;cursor:pointer}.layui-tab .layui-tab-title li a{display:block;padding:0 15px;margin:0 -15px}.layui-tab-title .layui-this{color:#000}.layui-tab-title .layui-this:after{position:absolute;left:0;top:0;content:"";width:100%;height:41px;border-width:1px;border-style:solid;border-bottom-color:#fff;border-radius:2px 2px 0 0;box-sizing:border-box;pointer-events:none}.layui-tab-bar{position:absolute;right:0;top:0;z-index:10;width:30px;height:39px;line-height:39px;border-width:1px;border-style:solid;border-radius:2px;text-align:center;background-color:#fff;cursor:pointer}.layui-tab-bar .layui-icon{position:relative;display:inline-block;top:3px;transition:all .3s;-webkit-transition:all .3s}.layui-tab-item{display:none}.layui-tab-more{padding-right:30px;height:auto!important;white-space:normal!important}.layui-tab-more li.layui-this:after{border-bottom-color:#eee;border-radius:2px}.layui-tab-more .layui-tab-bar .layui-icon{top:-2px;top:3px\0;-webkit-transform:rotate(180deg);transform:rotate(180deg)}:root .layui-tab-more .layui-tab-bar .layui-icon{top:-2px\0/IE9}.layui-tab-content{padding:15px 0}.layui-tab-title li .layui-tab-close{position:relative;display:inline-block;width:18px;height:18px;line-height:20px;margin-left:8px;top:1px;text-align:center;font-size:14px;color:#c2c2c2;transition:all .2s;-webkit-transition:all .2s}.layui-tab-title li .layui-tab-close:hover{border-radius:2px;background-color:#ff5722;color:#fff}.layui-tab-brief>.layui-tab-title .layui-this{color:#16baaa}.layui-tab-brief>.layui-tab-more li.layui-this:after,.layui-tab-brief>.layui-tab-title .layui-this:after{border:none;border-radius:0;border-bottom:2px solid #16b777}.layui-tab-brief[overflow]>.layui-tab-title .layui-this:after{top:-1px}.layui-tab-card{border-width:1px;border-style:solid;border-radius:2px;box-shadow:0 2px 5px 0 rgba(0,0,0,.1)}.layui-tab-card>.layui-tab-title{background-color:#fafafa}.layui-tab-card>.layui-tab-title li{margin-right:-1px;margin-left:-1px}.layui-tab-card>.layui-tab-title .layui-this{background-color:#fff}.layui-tab-card>.layui-tab-title .layui-this:after{border-top:none;border-width:1px;border-bottom-color:#fff}.layui-tab-card>.layui-tab-title .layui-tab-bar{height:40px;line-height:40px;border-radius:0;border-top:none;border-right:none}.layui-tab-card>.layui-tab-more .layui-this{background:0 0;color:#16b777}.layui-tab-card>.layui-tab-more .layui-this:after{border:none}.layui-timeline{padding-left:5px}.layui-timeline-item{position:relative;padding-bottom:20px}.layui-timeline-axis{position:absolute;left:-5px;top:0;z-index:10;width:20px;height:20px;line-height:20px;background-color:#fff;color:#16b777;border-radius:50%;text-align:center;cursor:pointer}.layui-timeline-axis:hover{color:#ff5722}.layui-timeline-item:before{content:"";position:absolute;left:5px;top:0;z-index:0;width:1px;height:100%}.layui-timeline-item:first-child:before{display:block}.layui-timeline-item:last-child:before{display:none}.layui-timeline-content{padding-left:25px}.layui-timeline-title{position:relative;margin-bottom:10px;line-height:22px}.layui-badge,.layui-badge-dot,.layui-badge-rim{position:relative;display:inline-block;padding:0 6px;font-size:12px;text-align:center;background-color:#ff5722;color:#fff;border-radius:2px}.layui-badge{height:18px;line-height:18px}.layui-badge-dot{width:8px;height:8px;padding:0;border-radius:50%}.layui-badge-rim{height:18px;line-height:18px;border-width:1px;border-style:solid;background-color:#fff;color:#5f5f5f}.layui-btn .layui-badge,.layui-btn .layui-badge-dot{margin-left:5px}.layui-nav .layui-badge,.layui-nav .layui-badge-dot{position:absolute;top:50%;margin:-5px 6px 0}.layui-nav .layui-badge{margin-top:-10px}.layui-tab-title .layui-badge,.layui-tab-title .layui-badge-dot{left:5px;top:-2px}.layui-carousel{position:relative;left:0;top:0;background-color:#f8f8f8}.layui-carousel>[carousel-item]{position:relative;width:100%;height:100%;overflow:hidden}.layui-carousel>[carousel-item]:before{position:absolute;content:'\e63d';left:50%;top:50%;width:100px;line-height:20px;margin:-10px 0 0 -50px;text-align:center;color:#c2c2c2;font-family:layui-icon!important;font-size:30px;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.layui-carousel>[carousel-item]>*{display:none;position:absolute;left:0;top:0;width:100%;height:100%;background-color:#f8f8f8;transition-duration:.3s;-webkit-transition-duration:.3s}.layui-carousel-updown>*{-webkit-transition:.3s ease-in-out up;transition:.3s ease-in-out up}.layui-carousel-arrow{display:none\0;opacity:0;position:absolute;left:10px;top:50%;margin-top:-18px;width:36px;height:36px;line-height:36px;text-align:center;font-size:20px;border:none 0;border-radius:50%;background-color:rgba(0,0,0,.2);color:#fff;-webkit-transition-duration:.3s;transition-duration:.3s;cursor:pointer}.layui-carousel-arrow[lay-type=add]{left:auto!important;right:10px}.layui-carousel[lay-arrow=always] .layui-carousel-arrow{opacity:1;left:20px}.layui-carousel[lay-arrow=always] .layui-carousel-arrow[lay-type=add]{right:20px}.layui-carousel[lay-arrow=none] .layui-carousel-arrow{display:none}.layui-carousel-arrow:hover,.layui-carousel-ind ul:hover{background-color:rgba(0,0,0,.35)}.layui-carousel:hover .layui-carousel-arrow{display:block\0;opacity:1;left:20px}.layui-carousel:hover .layui-carousel-arrow[lay-type=add]{right:20px}.layui-carousel-ind{position:relative;top:-35px;width:100%;line-height:0!important;text-align:center;font-size:0}.layui-carousel[lay-indicator=outside]{margin-bottom:30px}.layui-carousel[lay-indicator=outside] .layui-carousel-ind{top:10px}.layui-carousel[lay-indicator=outside] .layui-carousel-ind ul{background-color:rgba(0,0,0,.5)}.layui-carousel[lay-indicator=none] .layui-carousel-ind{display:none}.layui-carousel-ind ul{display:inline-block;padding:5px;background-color:rgba(0,0,0,.2);border-radius:10px;-webkit-transition-duration:.3s;transition-duration:.3s}.layui-carousel-ind ul li{display:inline-block;width:10px;height:10px;margin:0 3px;font-size:14px;background-color:#eee;background-color:rgba(255,255,255,.5);border-radius:50%;cursor:pointer;-webkit-transition-duration:.3s;transition-duration:.3s}.layui-carousel-ind ul li:hover{background-color:rgba(255,255,255,.7)}.layui-carousel-ind ul li.layui-this{background-color:#fff}.layui-carousel>[carousel-item]>.layui-carousel-next,.layui-carousel>[carousel-item]>.layui-carousel-prev,.layui-carousel>[carousel-item]>.layui-this{display:block}.layui-carousel>[carousel-item]>.layui-this{left:0}.layui-carousel>[carousel-item]>.layui-carousel-prev{left:-100%}.layui-carousel>[carousel-item]>.layui-carousel-next{left:100%}.layui-carousel>[carousel-item]>.layui-carousel-next.layui-carousel-left,.layui-carousel>[carousel-item]>.layui-carousel-prev.layui-carousel-right{left:0}.layui-carousel>[carousel-item]>.layui-this.layui-carousel-left{left:-100%}.layui-carousel>[carousel-item]>.layui-this.layui-carousel-right{left:100%}.layui-carousel[lay-anim=updown] .layui-carousel-arrow{left:50%!important;top:20px;margin:0 0 0 -18px}.layui-carousel[lay-anim=updown] .layui-carousel-arrow[lay-type=add]{top:auto!important;bottom:20px}.layui-carousel[lay-anim=updown] .layui-carousel-ind{position:absolute;top:50%;right:20px;width:auto;height:auto}.layui-carousel[lay-anim=updown] .layui-carousel-ind ul{padding:3px 5px}.layui-carousel[lay-anim=updown] .layui-carousel-ind li{display:block;margin:6px 0}.layui-carousel[lay-anim=updown]>[carousel-item]>*{left:0!important}.layui-carousel[lay-anim=updown]>[carousel-item]>.layui-this{top:0}.layui-carousel[lay-anim=updown]>[carousel-item]>.layui-carousel-prev{top:-100%}.layui-carousel[lay-anim=updown]>[carousel-item]>.layui-carousel-next{top:100%}.layui-carousel[lay-anim=updown]>[carousel-item]>.layui-carousel-next.layui-carousel-left,.layui-carousel[lay-anim=updown]>[carousel-item]>.layui-carousel-prev.layui-carousel-right{top:0}.layui-carousel[lay-anim=updown]>[carousel-item]>.layui-this.layui-carousel-left{top:-100%}.layui-carousel[lay-anim=updown]>[carousel-item]>.layui-this.layui-carousel-right{top:100%}.layui-carousel[lay-anim=fade]>[carousel-item]>*{left:0!important}.layui-carousel[lay-anim=fade]>[carousel-item]>.layui-carousel-next,.layui-carousel[lay-anim=fade]>[carousel-item]>.layui-carousel-prev{opacity:0}.layui-carousel[lay-anim=fade]>[carousel-item]>.layui-carousel-next.layui-carousel-left,.layui-carousel[lay-anim=fade]>[carousel-item]>.layui-carousel-prev.layui-carousel-right{opacity:1}.layui-carousel[lay-anim=fade]>[carousel-item]>.layui-this.layui-carousel-left,.layui-carousel[lay-anim=fade]>[carousel-item]>.layui-this.layui-carousel-right{opacity:0}.layui-fixbar{position:fixed;right:16px;bottom:16px;z-index:999999}.layui-fixbar li{width:50px;height:50px;line-height:50px;margin-bottom:1px;text-align:center;cursor:pointer;font-size:30px;background-color:#9f9f9f;color:#fff;border-radius:2px;opacity:.95}.layui-fixbar li:hover{opacity:.85}.layui-fixbar li:active{opacity:1}.layui-fixbar .layui-fixbar-top{display:none;font-size:40px}body .layui-util-face{border:none;background:0 0}body .layui-util-face .layui-layer-content{padding:0;background-color:#fff;color:#5f5f5f;box-shadow:none}.layui-util-face .layui-layer-TipsG{display:none}.layui-util-face ul{position:relative;width:372px;padding:10px;border:1px solid #d9d9d9;background-color:#fff;box-shadow:0 0 20px rgba(0,0,0,.2)}.layui-util-face ul li{cursor:pointer;float:left;border:1px solid #e8e8e8;height:22px;width:26px;overflow:hidden;margin:-1px 0 0 -1px;padding:4px 2px;text-align:center}.layui-util-face ul li:hover{position:relative;z-index:2;border:1px solid #eb7350;background:#fff9ec}.layui-code{position:relative;margin:10px 0;padding:15px;line-height:20px;border:1px solid #eee;border-left-width:6px;background-color:#fafafa;color:#333;font-family:Courier New,Lucida Console,Consolas;font-size:12px}.layui-transfer-box,.layui-transfer-header,.layui-transfer-search{border-width:0;border-style:solid;border-color:#eee}.layui-transfer-box{position:relative;display:inline-block;vertical-align:middle;border-width:1px;width:200px;height:360px;border-radius:2px;background-color:#fff}.layui-transfer-box .layui-form-checkbox{width:100%;margin:0!important}.layui-transfer-header{height:38px;line-height:38px;padding:0 11px;border-bottom-width:1px}.layui-transfer-search{position:relative;padding:11px;border-bottom-width:1px}.layui-transfer-search .layui-input{height:32px;padding-left:30px;font-size:12px}.layui-transfer-search .layui-icon-search{position:absolute;left:20px;top:50%;line-height:normal;margin-top:-8px;color:#5f5f5f}.layui-transfer-active{margin:0 15px;display:inline-block;vertical-align:middle}.layui-transfer-active .layui-btn{display:block;margin:0;padding:0 15px;background-color:#16b777;border-color:#16b777;color:#fff}.layui-transfer-active .layui-btn-disabled{background-color:#fbfbfb;border-color:#eee;color:#d2d2d2}.layui-transfer-active .layui-btn:first-child{margin-bottom:15px}.layui-transfer-active .layui-btn .layui-icon{margin:0;font-size:14px!important}.layui-transfer-data{padding:5px 0;overflow:auto}.layui-transfer-data li{height:32px;line-height:32px;margin-top:0!important;padding:0 11px;list-style-type:none!important}.layui-transfer-data li:hover{background-color:#f8f8f8;transition:.5s all}.layui-transfer-data .layui-none{padding:15px 11px;text-align:center;color:#999}.layui-rate,.layui-rate *{display:inline-block;vertical-align:middle}.layui-rate{padding:11px 6px 11px 0;font-size:0}.layui-rate li{margin-top:0!important}.layui-rate li i.layui-icon{font-size:20px;color:#ffb800}.layui-rate li i.layui-icon{margin-right:5px;transition:all .3s;-webkit-transition:all .3s}.layui-rate li i:hover{cursor:pointer;transform:scale(1.12);-webkit-transform:scale(1.12)}.layui-rate[readonly] li i:hover{cursor:default;transform:scale(1)}.layui-colorpicker{width:38px;height:38px;border:1px solid #eee;padding:5px;border-radius:2px;line-height:24px;display:inline-block;cursor:pointer;transition:all .3s;-webkit-transition:all .3s;box-sizing:border-box}.layui-colorpicker:hover{border-color:#d2d2d2}.layui-colorpicker.layui-colorpicker-lg{width:44px;height:44px;line-height:30px}.layui-colorpicker.layui-colorpicker-sm{width:30px;height:30px;line-height:20px;padding:3px}.layui-colorpicker.layui-colorpicker-xs{width:22px;height:22px;line-height:16px;padding:1px}.layui-colorpicker-trigger-bgcolor{display:block;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==);border-radius:2px}.layui-colorpicker-trigger-span{display:block;height:100%;box-sizing:border-box;border:1px solid rgba(0,0,0,.15);border-radius:2px;text-align:center}.layui-colorpicker-trigger-i{display:inline-block;color:#fff;font-size:12px}.layui-colorpicker-trigger-i.layui-icon-close{color:#999}.layui-colorpicker-main{position:absolute;left:-999999px;top:-999999px;z-index:77777777;width:280px;margin:5px 0;padding:7px;background:#fff;border:1px solid #d2d2d2;border-radius:2px;box-shadow:0 2px 4px rgba(0,0,0,.12)}.layui-colorpicker-main-wrapper{height:180px;position:relative}.layui-colorpicker-basis{width:260px;height:100%;position:relative}.layui-colorpicker-basis-white{width:100%;height:100%;position:absolute;top:0;left:0;background:linear-gradient(90deg,#fff,hsla(0,0%,100%,0))}.layui-colorpicker-basis-black{width:100%;height:100%;position:absolute;top:0;left:0;background:linear-gradient(0deg,#000,transparent)}.layui-colorpicker-basis-cursor{width:10px;height:10px;border:1px solid #fff;border-radius:50%;position:absolute;top:-3px;right:-3px;cursor:pointer}.layui-colorpicker-side{position:absolute;top:0;right:0;width:12px;height:100%;background:linear-gradient(red,#ff0,#0f0,#0ff,#00f,#f0f,red)}.layui-colorpicker-side-slider{width:100%;height:5px;box-shadow:0 0 1px #888;box-sizing:border-box;background:#fff;border-radius:1px;border:1px solid #f0f0f0;cursor:pointer;position:absolute;left:0}.layui-colorpicker-main-alpha{display:none;height:12px;margin-top:7px;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==)}.layui-colorpicker-alpha-bgcolor{height:100%;position:relative}.layui-colorpicker-alpha-slider{width:5px;height:100%;box-shadow:0 0 1px #888;box-sizing:border-box;background:#fff;border-radius:1px;border:1px solid #f0f0f0;cursor:pointer;position:absolute;top:0}.layui-colorpicker-main-pre{padding-top:7px;font-size:0}.layui-colorpicker-pre{width:20px;height:20px;border-radius:2px;display:inline-block;margin-left:6px;margin-bottom:7px;cursor:pointer}.layui-colorpicker-pre:nth-child(11n+1){margin-left:0}.layui-colorpicker-pre-isalpha{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==)}.layui-colorpicker-pre.layui-this{box-shadow:0 0 3px 2px rgba(0,0,0,.15)}.layui-colorpicker-pre>div{height:100%;border-radius:2px}.layui-colorpicker-main-input{text-align:right;padding-top:7px}.layui-colorpicker-main-input .layui-btn-container .layui-btn{margin:0 0 0 10px}.layui-colorpicker-main-input div.layui-inline{float:left;margin-right:10px;font-size:14px}.layui-colorpicker-main-input input.layui-input{width:150px;height:30px;color:#5f5f5f}.layui-slider{height:4px;background:#eee;border-radius:3px;position:relative;cursor:pointer}.layui-slider-bar{border-radius:3px;position:absolute;height:100%}.layui-slider-step{position:absolute;top:0;width:4px;height:4px;border-radius:50%;background:#fff;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.layui-slider-wrap{width:36px;height:36px;position:absolute;top:-16px;-webkit-transform:translateX(-50%);transform:translateX(-50%);z-index:10;text-align:center}.layui-slider-wrap-btn{width:12px;height:12px;border-radius:50%;background:#fff;display:inline-block;vertical-align:middle;cursor:pointer;transition:.3s}.layui-slider-wrap:after{content:"";height:100%;display:inline-block;vertical-align:middle}.layui-slider-wrap-btn.layui-slider-hover,.layui-slider-wrap-btn:hover{transform:scale(1.2)}.layui-slider-wrap-btn.layui-disabled:hover{transform:scale(1)!important}.layui-slider-tips{position:absolute;top:-42px;z-index:77777777;white-space:nowrap;display:none;-webkit-transform:translateX(-50%);transform:translateX(-50%);color:#fff;background:#000;border-radius:3px;height:25px;line-height:25px;padding:0 10px}.layui-slider-tips:after{content:"";position:absolute;bottom:-12px;left:50%;margin-left:-6px;width:0;height:0;border-width:6px;border-style:solid;border-color:#000 transparent transparent transparent}.layui-slider-input{width:70px;height:32px;border:1px solid #eee;border-radius:3px;font-size:16px;line-height:32px;position:absolute;right:0;top:-14px}.layui-slider-input-btn{position:absolute;top:0;right:0;width:20px;height:100%;border-left:1px solid #eee}.layui-slider-input-btn i{cursor:pointer;position:absolute;right:0;bottom:0;width:20px;height:50%;font-size:12px;line-height:16px;text-align:center;color:#999}.layui-slider-input-btn i:first-child{top:0;border-bottom:1px solid #eee}.layui-slider-input-txt{height:100%;font-size:14px}.layui-slider-input-txt input{height:100%;border:none}.layui-slider-input-btn i:hover{color:#16baaa}.layui-slider-vertical{width:4px;margin-left:33px}.layui-slider-vertical .layui-slider-bar{width:4px}.layui-slider-vertical .layui-slider-step{top:auto;left:0;-webkit-transform:translateY(50%);transform:translateY(50%)}.layui-slider-vertical .layui-slider-wrap{top:auto;left:-16px;-webkit-transform:translateY(50%);transform:translateY(50%)}.layui-slider-vertical .layui-slider-tips{top:auto;left:2px}@media \0screen{.layui-slider-wrap-btn{margin-left:-20px}.layui-slider-vertical .layui-slider-wrap-btn{margin-left:0;margin-bottom:-20px}.layui-slider-vertical .layui-slider-tips{margin-left:-8px}.layui-slider>span{margin-left:8px}}.layui-tree{line-height:22px}.layui-tree .layui-form-checkbox{margin:0!important}.layui-tree-set{width:100%;position:relative}.layui-tree-pack{display:none;padding-left:20px;position:relative}.layui-tree-line .layui-tree-pack{padding-left:27px}.layui-tree-line .layui-tree-set .layui-tree-set:after{content:"";position:absolute;top:14px;left:-9px;width:17px;height:0;border-top:1px dotted #c0c4cc}.layui-tree-entry{position:relative;padding:3px 0;height:20px;white-space:nowrap}.layui-tree-entry:hover{background-color:#eee}.layui-tree-line .layui-tree-entry:hover{background-color:rgba(0,0,0,0)}.layui-tree-line .layui-tree-entry:hover .layui-tree-txt{color:#999;text-decoration:underline;transition:.3s}.layui-tree-main{display:inline-block;vertical-align:middle;cursor:pointer;padding-right:10px}.layui-tree-line .layui-tree-set:before{content:"";position:absolute;top:0;left:-9px;width:0;height:100%;border-left:1px dotted #c0c4cc}.layui-tree-line .layui-tree-set.layui-tree-setLineShort:before{height:13px}.layui-tree-line .layui-tree-set.layui-tree-setHide:before{height:0}.layui-tree-iconClick{display:inline-block;vertical-align:middle;position:relative;height:20px;line-height:20px;margin:0 10px;color:#c0c4cc}.layui-tree-icon{height:12px;line-height:12px;width:12px;text-align:center;border:1px solid #c0c4cc}.layui-tree-iconClick .layui-icon{font-size:18px}.layui-tree-icon .layui-icon{font-size:12px;color:#5f5f5f}.layui-tree-iconArrow{padding:0 5px}.layui-tree-iconArrow:after{content:"";position:absolute;left:4px;top:3px;z-index:100;width:0;height:0;border-width:5px;border-style:solid;border-color:transparent transparent transparent #c0c4cc;transition:.5s}.layui-tree-spread>.layui-tree-entry .layui-tree-iconClick>.layui-tree-iconArrow:after{transform:rotate(90deg) translate(3px,4px)}.layui-tree-txt{display:inline-block;vertical-align:middle;color:#555}.layui-tree-search{margin-bottom:15px;color:#5f5f5f}.layui-tree-btnGroup{visibility:hidden;display:inline-block;vertical-align:middle;position:relative}.layui-tree-btnGroup .layui-icon{display:inline-block;vertical-align:middle;padding:0 2px;cursor:pointer}.layui-tree-btnGroup .layui-icon:hover{color:#999;transition:.3s}.layui-tree-entry:hover .layui-tree-btnGroup{visibility:visible}.layui-tree-editInput{position:relative;display:inline-block;vertical-align:middle;height:20px;line-height:20px;padding:0 3px;border:none;background-color:rgba(0,0,0,.05)}.layui-tree-emptyText{text-align:center;color:#999}.layui-anim{-webkit-animation-duration:.3s;-webkit-animation-fill-mode:both;animation-duration:.3s;animation-fill-mode:both}.layui-anim.layui-icon{display:inline-block}.layui-anim-loop{-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite}.layui-trans,.layui-trans a{transition:all .2s;-webkit-transition:all .2s}@-webkit-keyframes layui-rotate{from{-webkit-transform:rotate(0)}to{-webkit-transform:rotate(360deg)}}@keyframes layui-rotate{from{transform:rotate(0)}to{transform:rotate(360deg)}}.layui-anim-rotate{-webkit-animation-name:layui-rotate;animation-name:layui-rotate;-webkit-animation-duration:1s;animation-duration:1s;-webkit-animation-timing-function:linear;animation-timing-function:linear}@-webkit-keyframes layui-up{from{-webkit-transform:translate3d(0,100%,0);opacity:.3}to{-webkit-transform:translate3d(0,0,0);opacity:1}}@keyframes layui-up{from{transform:translate3d(0,100%,0);opacity:.3}to{transform:translate3d(0,0,0);opacity:1}}.layui-anim-up{-webkit-animation-name:layui-up;animation-name:layui-up}@-webkit-keyframes layui-upbit{from{-webkit-transform:translate3d(0,15px,0);opacity:.3}to{-webkit-transform:translate3d(0,0,0);opacity:1}}@keyframes layui-upbit{from{transform:translate3d(0,15px,0);opacity:.3}to{transform:translate3d(0,0,0);opacity:1}}.layui-anim-upbit{-webkit-animation-name:layui-upbit;animation-name:layui-upbit}@keyframes layui-down{0%{opacity:.3;transform:translate3d(0,-100%,0)}100%{opacity:1;transform:translate3d(0,0,0)}}.layui-anim-down{animation-name:layui-down}@keyframes layui-downbit{0%{opacity:.3;transform:translate3d(0,-5px,0)}100%{opacity:1;transform:translate3d(0,0,0)}}.layui-anim-downbit{animation-name:layui-downbit}@-webkit-keyframes layui-scale{0%{opacity:.3;-webkit-transform:scale(.5)}100%{opacity:1;-webkit-transform:scale(1)}}@keyframes layui-scale{0%{opacity:.3;-ms-transform:scale(.5);transform:scale(.5)}100%{opacity:1;-ms-transform:scale(1);transform:scale(1)}}.layui-anim-scale{-webkit-animation-name:layui-scale;animation-name:layui-scale}@-webkit-keyframes layui-scale-spring{0%{opacity:.5;-webkit-transform:scale(.5)}80%{opacity:.8;-webkit-transform:scale(1.1)}100%{opacity:1;-webkit-transform:scale(1)}}@keyframes layui-scale-spring{0%{opacity:.5;transform:scale(.5)}80%{opacity:.8;transform:scale(1.1)}100%{opacity:1;transform:scale(1)}}.layui-anim-scaleSpring{-webkit-animation-name:layui-scale-spring;animation-name:layui-scale-spring}@keyframes layui-scalesmall{0%{opacity:.3;transform:scale(1.5)}100%{opacity:1;transform:scale(1)}}.layui-anim-scalesmall{animation-name:layui-scalesmall}@keyframes layui-scalesmall-spring{0%{opacity:.3;transform:scale(1.5)}80%{opacity:.8;transform:scale(.9)}100%{opacity:1;transform:scale(1)}}.layui-anim-scalesmall-spring{animation-name:layui-scalesmall-spring}@-webkit-keyframes layui-fadein{0%{opacity:0}100%{opacity:1}}@keyframes layui-fadein{0%{opacity:0}100%{opacity:1}}.layui-anim-fadein{-webkit-animation-name:layui-fadein;animation-name:layui-fadein}@-webkit-keyframes layui-fadeout{0%{opacity:1}100%{opacity:0}}@keyframes layui-fadeout{0%{opacity:1}100%{opacity:0}}.layui-anim-fadeout{-webkit-animation-name:layui-fadeout;animation-name:layui-fadeout}html #layuicss-skincodecss{display:none;position:absolute;width:1989px}.layui-code-view{display:block;position:relative;margin:11px 0;padding:0;border:1px solid #eee;border-left-width:6px;background-color:#fafafa;color:#333;font-family:Courier New;font-size:13px}.layui-code-title{position:relative;padding:0 10px;height:40px;line-height:40px;border-bottom:1px solid #eee;font-size:12px}.layui-code-title>.layui-code-about{position:absolute;right:10px;top:0;color:#b7b7b7}.layui-code-about>a{padding-left:10px}.layui-code-view>.layui-code-ol,.layui-code-view>.layui-code-ul{max-height:100%;padding:0!important;position:relative;overflow:auto}.layui-code-view>.layui-code-ol>li{position:relative;margin-top:0!important;margin-left:45px!important;line-height:20px;padding:0 10px!important;border-left:1px solid #e2e2e2;list-style-type:decimal-leading-zero;*list-style-type:decimal;background-color:#fff}.layui-code-view>.layui-code-ol>li:first-child,.layui-code-view>.layui-code-ul>li:first-child{padding-top:10px!important}.layui-code-view>.layui-code-ol>li:last-child,.layui-code-view>.layui-code-ul>li:last-child{padding-bottom:10px!important}.layui-code-view>.layui-code-ul>li{position:relative;line-height:20px;padding:0 10px!important;list-style-type:none;*list-style-type:none;background-color:#fff}.layui-code-view pre{margin:0}.layui-code-dark{border:1px solid #0c0c0c;border-left-color:#3f3f3f;background-color:#0c0c0c;color:#c2be9e}.layui-code-dark>.layui-code-title{border-bottom:none}.layui-code-dark>.layui-code-ol>li,.layui-code-dark>.layui-code-ul>li{background-color:#3f3f3f;border-left:none}.layui-code-dark>.layui-code-ul>li{margin-left:6px}.layui-code textarea{display:none}.layui-code-preview>.layui-code{margin:0}.layui-code-preview>.layui-tab{position:relative;z-index:1;margin-bottom:0}.layui-code-preview>.layui-tab>.layui-tab-title{border-bottom:none}.layui-code-preview>.layui-code>.layui-code-title{display:none}.layui-code-preview .layui-code-item{display:none}.layui-code-item-preview{position:relative;padding:16px}.layui-code-item-preview>iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:none}.layui-code-tools{position:absolute;right:11px;top:3px}.layui-code-tools>i{display:inline-block;margin-left:6px;padding:3px;cursor:pointer}.layui-code-tools>i.layui-icon-file-b{color:#999}.layui-code-tools>i:hover{color:#16b777}.layui-code-copy{position:absolute;right:6px;top:6px;cursor:pointer;display:none}.layui-code-copy .layui-icon{color:#777;transition:all .3s}.layui-code-copy:hover .layui-icon{color:#16b777}.layui-code-view:hover>.layui-code-copy{display:block}.layui-code-copy-offset{margin-right:17px}.layui-code-preview>.layui-code-view>.layui-code-copy{display:none!important}.layui-code-full{position:fixed;left:0;top:0;z-index:1111111;width:100%;height:100%;background-color:#fff}.layui-code-full .layui-code-item{width:100%!important;border-width:0!important;border-top-width:1px!important}.layui-code-full .layui-code-item,.layui-code-full .layui-code-ol,.layui-code-full .layui-code-ul{height:calc(100vh - 51px)!important;box-sizing:border-box}html #layuicss-laydate{display:none;position:absolute;width:1989px}.layui-laydate *{margin:0;padding:0}.layui-laydate,.layui-laydate *{box-sizing:border-box}.layui-laydate{position:absolute;z-index:99999999;margin:5px 0;border-radius:2px;font-size:14px;line-height:normal;-webkit-animation-duration:.2s;animation-duration:.2s;-webkit-animation-fill-mode:both;animation-fill-mode:both}.layui-laydate-main{width:272px}.layui-laydate-content td,.layui-laydate-header *,.layui-laydate-list li{transition-duration:.3s;-webkit-transition-duration:.3s}.layui-laydate-shade{top:0;left:0;width:100%;height:100%;_height:expression(document.body.offsetHeight+"px");position:fixed;_position:absolute;pointer-events:auto}@keyframes laydate-downbit{0%{opacity:.3;transform:translate3d(0,-5px,0)}100%{opacity:1;transform:translate3d(0,0,0)}}.layui-laydate{animation-name:laydate-downbit}.layui-laydate-static{position:relative;z-index:0;display:inline-block;margin:0;-webkit-animation:none;animation:none}.laydate-ym-show .laydate-next-m,.laydate-ym-show .laydate-prev-m{display:none!important}.laydate-ym-show .laydate-next-y,.laydate-ym-show .laydate-prev-y{display:inline-block!important}.laydate-ym-show .laydate-set-ym span[lay-type=month]{display:none!important}.laydate-time-show .laydate-set-ym span[lay-type=month],.laydate-time-show .laydate-set-ym span[lay-type=year],.laydate-time-show .layui-laydate-header .layui-icon{display:none!important}.layui-laydate-header{position:relative;line-height:30px;padding:10px 70px 5px}.layui-laydate-header *{display:inline-block;vertical-align:bottom}.layui-laydate-header i{position:absolute;top:10px;padding:0 5px;color:#999;font-size:18px;cursor:pointer}.layui-laydate-header i.laydate-prev-y{left:15px}.layui-laydate-header i.laydate-prev-m{left:45px}.layui-laydate-header i.laydate-next-y{right:15px}.layui-laydate-header i.laydate-next-m{right:45px}.laydate-set-ym{width:100%;text-align:center;box-sizing:border-box;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.laydate-set-ym span{padding:0 10px;cursor:pointer}.laydate-time-text{cursor:default!important}.layui-laydate-content{position:relative;padding:10px;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.layui-laydate-content table{border-collapse:collapse;border-spacing:0}.layui-laydate-content td,.layui-laydate-content th{width:36px;height:30px;padding:0;text-align:center}.layui-laydate-content th{font-weight:400}.layui-laydate-content td{position:relative;cursor:pointer}.laydate-day-mark{position:absolute;left:0;top:0;width:100%;line-height:30px;font-size:12px;overflow:hidden}.laydate-day-mark::after{position:absolute;content:'';right:2px;top:2px;width:5px;height:5px;border-radius:50%}.laydate-day-holidays:before{position:absolute;left:0;top:0;font-size:12px;transform:scale(.7)}.laydate-day-holidays:before{content:'\4F11';color:#ff5722}.laydate-day-holidays[type=work]:before{content:'\73ED';color:inherit}.layui-laydate .layui-this .laydate-day-holidays:before{color:#fff}.layui-laydate-footer{position:relative;height:46px;line-height:26px;padding:10px}.layui-laydate-footer span{display:inline-block;vertical-align:top;height:26px;line-height:24px;padding:0 10px;border:1px solid #c9c9c9;border-radius:2px;background-color:#fff;font-size:12px;cursor:pointer;white-space:nowrap;transition:all .3s}.layui-laydate-footer span:hover{color:#16b777}.layui-laydate-footer span.layui-laydate-preview{cursor:default;border-color:transparent!important}.layui-laydate-footer span.layui-laydate-preview:hover{color:#777}.layui-laydate-footer span:first-child.layui-laydate-preview{padding-left:0}.laydate-footer-btns{position:absolute;right:10px;top:10px}.laydate-footer-btns span{margin:0 0 0 -1px;border-radius:0}.laydate-footer-btns span:first-child{border-radius:2px 0 0 2px}.laydate-footer-btns span:last-child{border-radius:0 2px 2px 0}.layui-laydate-shortcut{width:80px;padding:6px 0;display:inline-block;vertical-align:top;overflow:auto;max-height:276px;text-align:center}.layui-laydate-shortcut+.layui-laydate-main{display:inline-block;border-left:1px solid #e2e2e2}.layui-laydate-shortcut>li{padding:5px 8px;cursor:pointer;line-height:18px}.layui-laydate .layui-laydate-list{position:absolute;left:0;top:0;width:100%;height:100%;padding:10px;box-sizing:border-box;background-color:#fff}.layui-laydate .layui-laydate-list>li{position:relative;display:inline-block;width:33.3%;height:36px;line-height:36px;margin:3px 0;vertical-align:middle;text-align:center;cursor:pointer;list-style:none}.layui-laydate .laydate-month-list>li{width:25%;margin:17px 0}.layui-laydate .laydate-time-list>li{height:100%;margin:0;line-height:normal;cursor:default}.layui-laydate .laydate-time-list p{position:relative;top:-4px;margin:0;line-height:29px}.layui-laydate .laydate-time-list ol{height:181px;overflow:hidden}.layui-laydate .laydate-time-list>li:hover ol{overflow-y:auto}.layui-laydate .laydate-time-list ol li{width:130%;padding-left:33px;height:30px;line-height:30px;text-align:left;cursor:pointer}.layui-laydate-hint{position:absolute;top:115px;left:50%;width:250px;margin-left:-125px;line-height:20px;padding:15px;text-align:center;font-size:12px;color:#ff5722}.layui-laydate-range{width:546px}.layui-laydate-range .layui-laydate-main{display:inline-block;vertical-align:middle;max-width:50%}.layui-laydate-range .laydate-main-list-1 .layui-laydate-content,.layui-laydate-range .laydate-main-list-1 .layui-laydate-header{border-left:1px solid #e2e2e2}.layui-laydate-range.layui-laydate-linkage .laydate-main-list-0 .laydate-next-m,.layui-laydate-range.layui-laydate-linkage .laydate-main-list-0 .laydate-next-y,.layui-laydate-range.layui-laydate-linkage .laydate-main-list-1 .laydate-prev-m,.layui-laydate-range.layui-laydate-linkage .laydate-main-list-1 .laydate-prev-y{display:none}.layui-laydate,.layui-laydate-hint{border:1px solid #d2d2d2;box-shadow:0 2px 4px rgba(0,0,0,.12);background-color:#fff;color:#777}.layui-laydate-header{border-bottom:1px solid #e2e2e2}.layui-laydate-header i:hover,.layui-laydate-header span:hover{color:#16b777}.layui-laydate-content{border-top:none 0;border-bottom:none 0}.layui-laydate-content th{color:#333}.layui-laydate-content td{color:#777}.layui-laydate-content td.laydate-day-now{color:#16b777}.layui-laydate-content td.laydate-day-now:after{content:'';position:absolute;width:100%;height:30px;left:0;top:0;border:1px solid #16b777;box-sizing:border-box}.layui-laydate-linkage .layui-laydate-content td.laydate-selected>div{background-color:#00f7de}.layui-laydate-linkage .laydate-selected:hover>div{background-color:#00f7de!important}.layui-laydate-content td.laydate-selected:after,.layui-laydate-content td:hover:after{content:none}.layui-laydate-content td>div:hover,.layui-laydate-list li:hover,.layui-laydate-shortcut>li:hover{background-color:#eee;color:#333}.laydate-time-list li ol{margin:0;padding:0;border:1px solid #e2e2e2;border-left-width:0}.laydate-time-list li:first-child ol{border-left-width:1px}.laydate-time-list>li:hover{background:0 0}.layui-laydate-content .laydate-day-next,.layui-laydate-content .laydate-day-prev{color:#d2d2d2}.layui-laydate-linkage .laydate-selected.laydate-day-next>div,.layui-laydate-linkage .laydate-selected.laydate-day-prev>div{background-color:#f8f8f8!important}.layui-laydate-footer{border-top:1px solid #e2e2e2}.layui-laydate-hint{color:#ff5722}.laydate-day-mark::after{background-color:#16b777}.layui-laydate-content td.layui-this .laydate-day-mark::after{display:none}.layui-laydate-footer span[lay-type=date]{color:#16b777}.layui-laydate .layui-this,.layui-laydate .layui-this>div{background-color:#16baaa!important;color:#fff!important}.layui-laydate .laydate-disabled,.layui-laydate .laydate-disabled:hover{background:0 0!important;color:#d2d2d2!important;cursor:not-allowed!important;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.layui-laydate-content td>div{padding:7px 0;height:100%}.laydate-theme-molv{border:none}.laydate-theme-molv.layui-laydate-range{width:548px}.laydate-theme-molv .layui-laydate-main{width:274px}.laydate-theme-molv .layui-laydate-header{border:none;background-color:#16baaa}.laydate-theme-molv .layui-laydate-header i,.laydate-theme-molv .layui-laydate-header span{color:#f6f6f6}.laydate-theme-molv .layui-laydate-header i:hover,.laydate-theme-molv .layui-laydate-header span:hover{color:#fff}.laydate-theme-molv .layui-laydate-content{border:1px solid #e2e2e2;border-top:none;border-bottom:none}.laydate-theme-molv .laydate-main-list-1 .layui-laydate-content{border-left:none}.laydate-theme-molv .layui-laydate-footer{border:1px solid #e2e2e2}.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 #e2e2e2}.layui-laydate-linkage.laydate-theme-grid .laydate-selected,.layui-laydate-linkage.laydate-theme-grid .laydate-selected:hover{background-color:#f2f2f2!important;color:#16baaa!important}.layui-laydate-linkage.laydate-theme-grid .laydate-selected.laydate-day-next,.layui-laydate-linkage.laydate-theme-grid .laydate-selected.laydate-day-prev{color:#d2d2d2!important}.laydate-theme-grid .laydate-month-list,.laydate-theme-grid .laydate-year-list{margin:1px 0 0 1px}.laydate-theme-grid .laydate-month-list>li,.laydate-theme-grid .laydate-year-list>li{margin:0 -1px -1px 0}.laydate-theme-grid .laydate-year-list>li{height:43px;line-height:43px}.laydate-theme-grid .laydate-month-list>li{height:71px;line-height:71px}.laydate-theme-grid .layui-laydate-content td>div{height:29px;margin-top:-1px}.laydate-theme-circle .layui-laydate-content td.layui-this>div,.laydate-theme-circle .layui-laydate-content td>div{width:28px;height:28px;line-height:28px;border-radius:14px;margin:0 4px;padding:0}.layui-laydate.laydate-theme-circle .layui-laydate-content table td.layui-this{background-color:transparent!important}.laydate-theme-grid.laydate-theme-circle .layui-laydate-content td>div{margin:0 3.5px}.laydate-theme-fullpanel .layui-laydate-main{width:526px}.laydate-theme-fullpanel .layui-laydate-list{width:252px;left:272px}.laydate-theme-fullpanel .laydate-set-ym span{display:none}.laydate-theme-fullpanel .laydate-time-show .laydate-set-ym span[lay-type=month],.laydate-theme-fullpanel .laydate-time-show .laydate-set-ym span[lay-type=year],.laydate-theme-fullpanel .laydate-time-show .layui-laydate-header .layui-icon{display:inline-block!important}.laydate-theme-fullpanel .laydate-btns-time{display:none}html #layuicss-layer{display:none;position:absolute;width:1989px}.layui-layer,.layui-layer-shade{position:fixed;_position:absolute;pointer-events:auto}.layui-layer-shade{top:0;left:0;width:100%;height:100%;_height:expression(document.body.offsetHeight+"px")}.layui-layer{-webkit-overflow-scrolling:touch}.layui-layer{top:150px;left:0;margin:0;padding:0;background-color:#fff;-webkit-background-clip:content;border-radius:2px;box-shadow:1px 1px 50px rgba(0,0,0,.3)}.layui-layer-close{position:absolute}.layui-layer-content{position:relative}.layui-layer-border{border:1px solid #b2b2b2;border:1px solid rgba(0,0,0,.1);box-shadow:1px 1px 5px rgba(0,0,0,.2)}.layui-layer-btn a,.layui-layer-setwin span{display:inline-block;*display:inline;*zoom:1;vertical-align:top}.layui-layer-move{display:none;position:fixed;*position:absolute;left:0;top:0;width:100%;height:100%;cursor:move;opacity:0;filter:alpha(opacity=0);background-color:#fff;z-index:2147483647}.layui-layer-resize{position:absolute;width:15px;height:15px;right:0;bottom:0;cursor:se-resize}.layer-anim{-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-duration:.3s;animation-duration:.3s}@-webkit-keyframes layer-bounceIn{0%{opacity:0;-webkit-transform:scale(.5);transform:scale(.5)}100%{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}@keyframes layer-bounceIn{0%{opacity:0;-webkit-transform:scale(.5);-ms-transform:scale(.5);transform:scale(.5)}100%{opacity:1;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}.layer-anim-00{-webkit-animation-name:layer-bounceIn;animation-name:layer-bounceIn}@-webkit-keyframes layer-zoomInDown{0%{opacity:0;-webkit-transform:scale(.1) translateY(-2000px);transform:scale(.1) translateY(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateY(60px);transform:scale(.475) translateY(60px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}@keyframes layer-zoomInDown{0%{opacity:0;-webkit-transform:scale(.1) translateY(-2000px);-ms-transform:scale(.1) translateY(-2000px);transform:scale(.1) translateY(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateY(60px);-ms-transform:scale(.475) translateY(60px);transform:scale(.475) translateY(60px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}.layer-anim-01{-webkit-animation-name:layer-zoomInDown;animation-name:layer-zoomInDown}@-webkit-keyframes layer-fadeInUpBig{0%{opacity:0;-webkit-transform:translateY(2000px);transform:translateY(2000px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes layer-fadeInUpBig{0%{opacity:0;-webkit-transform:translateY(2000px);-ms-transform:translateY(2000px);transform:translateY(2000px)}100%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.layer-anim-02{-webkit-animation-name:layer-fadeInUpBig;animation-name:layer-fadeInUpBig}@-webkit-keyframes layer-zoomInLeft{0%{opacity:0;-webkit-transform:scale(.1) translateX(-2000px);transform:scale(.1) translateX(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateX(48px);transform:scale(.475) translateX(48px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}@keyframes layer-zoomInLeft{0%{opacity:0;-webkit-transform:scale(.1) translateX(-2000px);-ms-transform:scale(.1) translateX(-2000px);transform:scale(.1) translateX(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateX(48px);-ms-transform:scale(.475) translateX(48px);transform:scale(.475) translateX(48px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}.layer-anim-03{-webkit-animation-name:layer-zoomInLeft;animation-name:layer-zoomInLeft}@-webkit-keyframes layer-rollIn{0%{opacity:0;-webkit-transform:translateX(-100%) rotate(-120deg);transform:translateX(-100%) rotate(-120deg)}100%{opacity:1;-webkit-transform:translateX(0) rotate(0);transform:translateX(0) rotate(0)}}@keyframes layer-rollIn{0%{opacity:0;-webkit-transform:translateX(-100%) rotate(-120deg);-ms-transform:translateX(-100%) rotate(-120deg);transform:translateX(-100%) rotate(-120deg)}100%{opacity:1;-webkit-transform:translateX(0) rotate(0);-ms-transform:translateX(0) rotate(0);transform:translateX(0) rotate(0)}}.layer-anim-04{-webkit-animation-name:layer-rollIn;animation-name:layer-rollIn}@keyframes layer-fadeIn{0%{opacity:0}100%{opacity:1}}.layer-anim-05{-webkit-animation-name:layer-fadeIn;animation-name:layer-fadeIn}@-webkit-keyframes layer-shake{0%,100%{-webkit-transform:translateX(0);transform:translateX(0)}10%,30%,50%,70%,90%{-webkit-transform:translateX(-10px);transform:translateX(-10px)}20%,40%,60%,80%{-webkit-transform:translateX(10px);transform:translateX(10px)}}@keyframes layer-shake{0%,100%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}10%,30%,50%,70%,90%{-webkit-transform:translateX(-10px);-ms-transform:translateX(-10px);transform:translateX(-10px)}20%,40%,60%,80%{-webkit-transform:translateX(10px);-ms-transform:translateX(10px);transform:translateX(10px)}}.layer-anim-06{-webkit-animation-name:layer-shake;animation-name:layer-shake}@-webkit-keyframes fadeIn{0%{opacity:0}100%{opacity:1}}@keyframes layer-slide-down{from{transform:translate3d(0,-100%,0)}to{transform:translate3d(0,0,0)}}@keyframes layer-slide-down-out{from{transform:translate3d(0,0,0)}to{transform:translate3d(0,-100%,0)}}.layer-anim-slide-down{animation-name:layer-slide-down}.layer-anim-slide-down-out{animation-name:layer-slide-down-out}@keyframes layer-slide-left{from{transform:translate3d(100%,0,0)}to{transform:translate3d(0,0,0)}}@keyframes layer-slide-left-out{from{transform:translate3d(0,0,0)}to{transform:translate3d(100%,0,0)}}.layer-anim-slide-left{animation-name:layer-slide-left}.layer-anim-slide-left-out{animation-name:layer-slide-left-out}@keyframes layer-slide-up{from{transform:translate3d(0,100%,0)}to{transform:translate3d(0,0,0)}}@keyframes layer-slide-up-out{from{transform:translate3d(0,0,0)}to{transform:translate3d(0,100%,0)}}.layer-anim-slide-up{animation-name:layer-slide-up}.layer-anim-slide-up-out{animation-name:layer-slide-up-out}@keyframes layer-slide-right{from{transform:translate3d(-100%,0,0)}to{transform:translate3d(0,0,0)}}@keyframes layer-slide-right-out{from{transform:translate3d(0,0,0)}to{transform:translate3d(-100%,0,0)}}.layer-anim-slide-right{animation-name:layer-slide-right}.layer-anim-slide-right-out{animation-name:layer-slide-right-out}.layui-layer-title{padding:0 81px 0 16px;height:50px;line-height:50px;border-bottom:1px solid #f0f0f0;font-size:14px;color:#333;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:2px 2px 0 0}.layui-layer-setwin{position:absolute;right:15px;*right:0;top:16px;font-size:0;line-height:initial}.layui-layer-setwin span{position:relative;width:16px;height:16px;line-height:18px;margin-left:10px;text-align:center;font-size:16px;cursor:pointer;color:#000;_overflow:hidden}.layui-layer-setwin .layui-layer-min:before{content:'';position:absolute;width:12px;height:1px;left:50%;top:50%;margin:-.5px 0 0 -6px;background-color:#2e2d3c;cursor:pointer;_overflow:hidden}.layui-layer-setwin .layui-layer-min:hover:before{background-color:#2d93ca}.layui-layer-setwin .layui-layer-max:after,.layui-layer-setwin .layui-layer-max:before{content:'';position:absolute;left:50%;top:50%;z-index:1;width:9px;height:9px;margin:-5px 0 0 -5px;border:1px solid #2e2d3c}.layui-layer-setwin .layui-layer-max:hover:after,.layui-layer-setwin .layui-layer-max:hover:before{border-color:#2d93ca}.layui-layer-setwin .layui-layer-min:hover:before{background-color:#2d93ca}.layui-layer-setwin .layui-layer-maxmin:after,.layui-layer-setwin .layui-layer-maxmin:before{width:7px;height:7px;margin:-3px 0 0 -3px;background-color:#fff}.layui-layer-setwin .layui-layer-maxmin:after{z-index:0;margin:-5px 0 0 -1px}.layui-layer-setwin .layui-layer-close{cursor:pointer}.layui-layer-setwin .layui-layer-close:hover{opacity:.7}.layui-layer-setwin .layui-layer-close2{position:absolute;right:-28px;top:-28px;color:#fff;background-color:#787878;padding:3px;border:3px solid;width:18px;height:18px;font-size:18px;font-weight:bolder;border-radius:50%;margin-left:0;*right:-18px;_display:none}.layui-layer-setwin .layui-layer-close2:hover{opacity:unset;background-color:#3888f6}.layui-layer-btn{text-align:right;padding:0 15px 12px;pointer-events:auto;user-select:none;-webkit-user-select:none}.layui-layer-btn a{height:28px;line-height:28px;margin:5px 5px 0;padding:0 15px;border:1px solid #dedede;background-color:#fff;color:#333;border-radius:2px;font-weight:400;cursor:pointer;text-decoration:none}.layui-layer-btn a:hover{opacity:.9;text-decoration:none}.layui-layer-btn a:active{opacity:.8}.layui-layer-btn .layui-layer-btn0{border-color:#1e9fff;background-color:#1e9fff;color:#fff}.layui-layer-btn-l{text-align:left}.layui-layer-btn-c{text-align:center}.layui-layer-dialog{min-width:240px}.layui-layer-dialog .layui-layer-content{position:relative;padding:16px;line-height:24px;word-break:break-all;overflow:hidden;font-size:14px;overflow-x:hidden;overflow-y:auto}.layui-layer-dialog .layui-layer-content .layui-layer-face{position:absolute;top:18px;left:16px;color:#959595;font-size:32px;_left:-40px}.layui-layer-dialog .layui-layer-content .layui-icon-tips{color:#f39b12}.layui-layer-dialog .layui-layer-content .layui-icon-success{color:#16b777}.layui-layer-dialog .layui-layer-content .layui-icon-error{top:19px;color:#ff5722}.layui-layer-dialog .layui-layer-content .layui-icon-question{color:#ffb800}.layui-layer-dialog .layui-layer-content .layui-icon-lock{color:#787878}.layui-layer-dialog .layui-layer-content .layui-icon-face-cry{color:#ff5722}.layui-layer-dialog .layui-layer-content .layui-icon-face-smile{color:#16b777}.layui-layer-rim{border:6px solid #8d8d8d;border:6px solid rgba(0,0,0,.3);border-radius:5px;box-shadow:none}.layui-layer-msg{min-width:180px;border:1px solid #d3d4d3;box-shadow:none}.layui-layer-hui{min-width:100px;background-color:#000;filter:alpha(opacity=60);background-color:rgba(0,0,0,.6);color:#fff;border:none}.layui-layer-hui .layui-layer-close{color:#fff}.layui-layer-hui .layui-layer-content{padding:11px 24px;text-align:center}.layui-layer-dialog .layui-layer-padding{padding:18px 24px 18px 58px;text-align:left}.layui-layer-page .layui-layer-content{position:relative;overflow:auto}.layui-layer-iframe .layui-layer-btn,.layui-layer-page .layui-layer-btn{padding-top:10px}.layui-layer-nobg{background:0 0}.layui-layer-iframe iframe{display:block;width:100%}.layui-layer-loading{border-radius:100%;background:0 0;box-shadow:none;border:none}.layui-layer-loading .layui-layer-content{width:76px;height:38px;line-height:38px;text-align:center}.layui-layer-loading-icon{font-size:38px;color:#959595}.layui-layer-loading2{text-align:center}.layui-layer-loading-2{position:relative;height:38px}.layui-layer-loading-2:after,.layui-layer-loading-2:before{content:'';position:absolute;left:50%;top:50%;width:38px;height:38px;margin:-19px 0 0 -19px;border-radius:50%;border:3px solid #d2d2d2;box-sizing:border-box}.layui-layer-loading-2:after{border-color:transparent;border-left-color:#1e9fff}.layui-layer-tips{background:0 0;box-shadow:none;border:none}.layui-layer-tips .layui-layer-content{position:relative;line-height:22px;min-width:12px;padding:8px 15px;font-size:12px;_float:left;border-radius:2px;box-shadow:1px 1px 3px rgba(0,0,0,.2);background-color:#000;color:#fff}.layui-layer-tips .layui-layer-close{right:-2px;top:-1px}.layui-layer-tips i.layui-layer-TipsG{position:absolute;width:0;height:0;border-width:8px;border-color:transparent;border-style:dashed;*overflow:hidden}.layui-layer-tips i.layui-layer-TipsB,.layui-layer-tips i.layui-layer-TipsT{left:5px;border-right-style:solid;border-right-color:#000}.layui-layer-tips i.layui-layer-TipsT{bottom:-8px}.layui-layer-tips i.layui-layer-TipsB{top:-8px}.layui-layer-tips i.layui-layer-TipsL,.layui-layer-tips i.layui-layer-TipsR{top:5px;border-bottom-style:solid;border-bottom-color:#000}.layui-layer-tips i.layui-layer-TipsR{left:-8px}.layui-layer-tips i.layui-layer-TipsL{right:-8px}.layui-layer-lan .layui-layer-title{background:#4476a7;color:#fff;border:none}.layui-layer-lan .layui-layer-btn{padding:5px 10px 10px;border-top:1px solid #e9e7e7}.layui-layer-lan .layui-layer-btn a{background:#fff;border-color:#e9e7e7;color:#333}.layui-layer-lan .layui-layer-btn .layui-layer-btn1{background:#c9c5c5}.layui-layer-molv .layui-layer-title{background:#009f95;color:#fff;border:none}.layui-layer-molv .layui-layer-btn a{background:#009f95;border-color:#009f95}.layui-layer-molv .layui-layer-btn .layui-layer-btn1{background:#92b8b1}.layui-layer-lan .layui-layer-setwin .layui-icon,.layui-layer-molv .layui-layer-setwin .layui-icon{color:#fff}.layui-layer-win10{border:1px solid #aaa;box-shadow:1px 1px 6px rgba(0,0,0,.3);border-radius:none}.layui-layer-win10 .layui-layer-title{height:32px;line-height:32px;padding-left:8px;border-bottom:none;font-size:12px}.layui-layer-win10 .layui-layer-setwin{right:0;top:0}.layui-layer-win10 .layui-layer-setwin span{margin-left:0;padding:8px}.layui-layer-win10.layui-layer-page .layui-layer-setwin span{padding:8px 11px}.layui-layer-win10 .layui-layer-setwin span:hover{background-color:#e5e5e5}.layui-layer-win10 .layui-layer-setwin span.layui-icon-close:hover{background-color:#e81123;color:#fff}.layui-layer-win10.layui-layer-dialog .layui-layer-content{padding:8px 16px 32px;color:#0033bc}.layui-layer-win10.layui-layer-dialog .layui-layer-padding{padding-top:18px;padding-left:58px}.layui-layer-win10 .layui-layer-btn{padding:5px 5px 10px;border-top:1px solid #dfdfdf;background-color:#f0f0f0}.layui-layer-win10 .layui-layer-btn a{height:18px;line-height:18px;background-color:#e1e1e1;border-color:#adadad;color:#000;font-size:12px;transition:all .3s}.layui-layer-win10 .layui-layer-btn a:hover{border-color:#2a8edd;background-color:#e5f1fb}.layui-layer-win10 .layui-layer-btn .layui-layer-btn0{border-color:#0078d7}.layui-layer-prompt .layui-layer-input{display:block;width:260px;height:36px;margin:0 auto;line-height:30px;padding-left:10px;border:1px solid #e6e6e6;color:#333}.layui-layer-prompt textarea.layui-layer-input{width:300px;height:100px;line-height:20px;padding:6px 10px}.layui-layer-prompt .layui-layer-content{padding:16px}.layui-layer-prompt .layui-layer-btn{padding-top:0}.layui-layer-tab{box-shadow:1px 1px 50px rgba(0,0,0,.4)}.layui-layer-tab .layui-layer-title{padding-left:0;overflow:visible}.layui-layer-tab .layui-layer-title span{position:relative;display:inline-block;vertical-align:top;border-left:1px solid transparent;border-right:1px solid transparent;min-width:80px;max-width:300px;padding:0 16px;text-align:center;cursor:default;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;cursor:pointer}.layui-layer-tab .layui-layer-title span.layui-this{height:51px;border-left-color:#eee;border-right-color:#eee;background-color:#fff;z-index:10}.layui-layer-tab .layui-layer-title span:first-child{border-left-color:transparent}.layui-layer-tabmain{line-height:24px;clear:both}.layui-layer-tabmain .layui-layer-tabli{display:none}.layui-layer-tabmain .layui-layer-tabli.layui-this{display:block}.layui-layer-photos{background:0 0;box-shadow:none}.layui-layer-photos .layui-layer-content{overflow:hidden;text-align:center}.layui-layer-photos .layui-layer-phimg img{position:relative;width:100%;display:inline-block;*display:inline;*zoom:1;vertical-align:top}.layui-layer-imgnext,.layui-layer-imgprev{position:fixed;top:50%;width:52px;height:52px;line-height:52px;margin-top:-26px;cursor:pointer;font-size:52px;color:#717171}.layui-layer-imgprev{left:32px}.layui-layer-imgnext{right:32px}.layui-layer-imgnext:hover,.layui-layer-imgprev:hover{color:#959595}.layui-layer-imgbar{position:fixed;left:0;right:0;bottom:0;width:100%;height:40px;line-height:40px;background-color:#000\9;filter:Alpha(opacity=60);background-color:rgba(2,0,0,.35);color:#fff;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;font-size:0}.layui-layer-imgtit *{display:inline-block;*display:inline;*zoom:1;vertical-align:top;padding:0 5px;font-size:12px;color:#fff}.layui-layer-imgtit h3{max-width:65%;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;font-weight:300}.layui-layer-imgtit a:hover{color:#fff;text-decoration:underline}.layui-layer-imgtit em{font-style:normal}@-webkit-keyframes layer-bounceOut{100%{opacity:0;-webkit-transform:scale(.7);transform:scale(.7)}30%{-webkit-transform:scale(1.05);transform:scale(1.05)}0%{-webkit-transform:scale(1);transform:scale(1)}}@keyframes layer-bounceOut{100%{opacity:0;-webkit-transform:scale(.7);-ms-transform:scale(.7);transform:scale(.7)}30%{-webkit-transform:scale(1.05);-ms-transform:scale(1.05);transform:scale(1.05)}0%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}.layer-anim-close{-webkit-animation-name:layer-bounceOut;animation-name:layer-bounceOut;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-duration:.2s;animation-duration:.2s}@media screen and (max-width:1100px){.layui-layer-iframe{overflow-y:auto;-webkit-overflow-scrolling:touch}}.iziToast-capsule{font-size:0;height:0;width:100%;transform:translateZ(0);backface-visibility:hidden;transition:transform .5s cubic-bezier(.25,.8,.25,1),height .5s cubic-bezier(.25,.8,.25,1)}.iziToast-capsule,.iziToast-capsule *{box-sizing:border-box}.iziToast-overlay{display:block;position:fixed;top:-100px;left:0;right:0;bottom:-100px;z-index:19891100}.iziToast{display:inline-block;clear:both;position:relative;font-family:Lato,Tahoma,Arial;font-size:14px;padding:8px 45px 9px 0;background:#fff;border-color:#fff;width:100%;pointer-events:all;cursor:default;transform:translateX(0);-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;min-height:45px;box-shadow:0 2px 12px 0 rgba(0,0,0,.1);max-width:90%;margin:5px 0;border-radius:4px}.iziToast>.iziToast-progressbar{position:absolute;left:0;bottom:0;width:100%;z-index:1;background:rgba(255,255,255,.5)}.iziToast>.iziToast-progressbar>div{height:2px;width:100%;background:#ddd;border-radius:0 0 3px 3px}.iziToast.iziToast-theme-dark>.iziToast-progressbar>div{background:#fff}.iziToast.iziToast-balloon:before{content:'';position:absolute;right:8px;left:auto;width:0;height:0;top:100%;border-right:0 solid transparent;border-left:15px solid transparent;border-top:10px solid #000;border-top-color:inherit;border-radius:0}.iziToast.iziToast-balloon .iziToast-progressbar{top:0;bottom:auto}.iziToast.iziToast-balloon>div{border-radius:0 0 0 3px}.iziToast>.iziToast-cover{position:absolute;left:0;top:0;bottom:0;height:100%;margin:0;background-size:100%;background-position:50% 50%;background-repeat:no-repeat}.iziToast>.iziToast-close{position:absolute;right:0;top:0;border:0;padding:0;opacity:.6;width:42px;height:100%;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAJPAAACTwBcGfW0QAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAD3SURBVFiF1ZdtDoMgDEBfdi4PwAX8vLFn0qT7wxantojKupmQmCi8R4tSACpgjC2ICCUbEBa8ingjsU1AXRBeR8aLN64FiknswN8CYefBBDQ3whuFESy7WyQMeC0ipEI0A+0FeBvHUFN8xPaUhAH/iKoWsnXHGegy4J0yxialOfaHJAz4bhRzQzgDvdGnz4GbAonZbCQMuBm1K/kcFu8Mp1N2cFFpsxsMuJqqbIGExGl4loARajU1twskJLLhIsID7+tvUoDnIjTg5T9DPH9EBrz8rxjPzciAl9+O8SxI8CzJ8CxKFfh3ynK8Dyb8wNHM/XDqejx/AtNyPO87tNybAAAAAElFTkSuQmCC) 50% 50% no-repeat;background-size:8px;cursor:pointer;outline:0}.iziToast>.iziToast-close:hover{opacity:1}.iziToast>.iziToast-body{position:relative;padding:0 0 0 10px;height:auto;min-height:28px;margin:0 0 0 15px;text-align:left}.iziToast>.iziToast-body:after{content:"";display:table;clear:both}.iziToast>.iziToast-body .iziToast-texts{margin:6px 0;padding-right:2px;display:inline-block;float:left}.iziToast>.iziToast-body .iziToast-inputs{min-height:19px;float:left;margin:3px -2px}.iziToast>.iziToast-body .iziToast-inputs>input:not([type=checkbox]):not([type=radio]),.iziToast>.iziToast-body .iziToast-inputs>select{position:relative;display:inline-block;margin:2px;border-radius:2px;border:0;padding:4px 7px;font-size:13px;letter-spacing:.02em;background:rgba(0,0,0,.1);color:#000;box-shadow:0 0 0 1px rgba(0,0,0,.2);min-height:26px}.iziToast>.iziToast-body .iziToast-inputs>input:not([type=checkbox]):not([type=radio]):focus,.iziToast>.iziToast-body .iziToast-inputs>select:focus{box-shadow:0 0 0 1px rgba(0,0,0,.6)}.iziToast>.iziToast-body .iziToast-buttons{min-height:17px;float:left;margin:4px 0 0}.iziToast>.iziToast-body .iziToast-buttons>a,.iziToast>.iziToast-body .iziToast-buttons>button,.iziToast>.iziToast-body .iziToast-buttons>input:not([type=checkbox]):not([type=radio]){position:relative;display:inline-block;margin:2px;border-radius:2px;border:0;padding:5px 10px;font-size:12px;letter-spacing:.02em;cursor:pointer;background:rgba(0,0,0,.1);color:#555}.iziToast>.iziToast-body .iziToast-buttons>a:hover,.iziToast>.iziToast-body .iziToast-buttons>button:hover,.iziToast>.iziToast-body .iziToast-buttons>input:not([type=checkbox]):not([type=radio]):hover{background:rgba(0,0,0,.15)}.iziToast>.iziToast-body .iziToast-buttons>a:focus,.iziToast>.iziToast-body .iziToast-buttons>button:focus,.iziToast>.iziToast-body .iziToast-buttons>input:not([type=checkbox]):not([type=radio]):focus{box-shadow:0 0 0 1px rgba(0,0,0,.6)}.iziToast>.iziToast-body .iziToast-buttons>a:active,.iziToast>.iziToast-body .iziToast-buttons>button:active,.iziToast>.iziToast-body .iziToast-buttons>input:not([type=checkbox]):not([type=radio]):active{top:1px}.iziToast>.iziToast-body .iziToast-icon{position:absolute;left:0;top:50%;display:table;font-size:23px;line-height:24px;margin-top:-11px;color:#000;width:24px;height:24px}.iziToast>.iziToast-body .iziToast-message,.iziToast>.iziToast-body .iziToast-title{padding:0;font-size:14px;line-height:16px;white-space:normal;float:left;text-align:left}.iziToast>.iziToast-body .iziToast-icon.ico-info{background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNTU1NzcxMTk5MzYwIiBjbGFzcz0iaWNvbiIgc3R5bGU9IiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjEwODAzIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgd2lkdGg9IjIwMCIgaGVpZ2h0PSIyMDAiPjxkZWZzPjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+PC9zdHlsZT48L2RlZnM+PHBhdGggZD0iTTUxMiAyOC40MTZjLTI2Ny40Njg4IDAtNDg0LjI0OTYgMjE2LjgzMi00ODQuMjQ5NiA0ODQuMjQ5NiAwIDI2Ny40MTc2IDIxNi44MzIgNDg0LjI0OTYgNDg0LjI0OTYgNDg0LjI0OTYgMjY3LjQxNzYgMCA0ODQuMzAwOC0yMTYuODMyIDQ4NC4zMDA4LTQ4NC4yNDk2Qzk5Ni4zMDA4IDI0NS4yNDggNzc5LjQxNzYgMjguNDE2IDUxMiAyOC40MTZ6TTQ1NS41MjY0IDI0NS4wOTQ0QzQ3MC4zMjMyIDIyOS44ODggNDkwLjcwMDggMjIxLjMzNzYgNTExLjc5NTIgMjIxLjY0NDhjMjEuMTk2OC0wLjIwNDggNDEuNzc5MiA4LjI0MzIgNTYuNTI0OCAyMy40NDk2IDE1LjAwMTYgMTQuNzk2OCAyMy4yOTYgMzUuMTIzMiAyMy4wOTEyIDU2LjExNTIgMC4yMDQ4IDIxLjE5NjgtOC4yOTQ0IDQxLjU3NDQtMjMuMzk4NCA1Ni4yMTc2LTE0LjY5NDQgMTQuNjk0NC0zNC43MTM2IDIzLjA0LTU1LjM5ODQgMjMuMDRMNTExLjc5NTIgMzgwLjQ2NzJjLTIwLjk5MiAwLjIwNDgtNDEuMzY5Ni04LjE0MDgtNTYuMDY0LTIzLjE0MjRDNDQwLjY3ODQgMzQyLjY4MTYgNDMyLjMzMjggMzIyLjMwNCA0MzIuNTM3NiAzMDEuMjA5NiA0MzIuMzMyOCAyODAuMjE3NiA0NDAuNjc4NCAyNTkuODkxMiA0NTUuNTI2NCAyNDUuMDk0NHpNNjI3LjYwOTYgNzY4LjE1MzZsMCAxMy40MTQ0IDAgMjIuMjIwOEwzOTYuMjg4IDgwMy43ODg4bDAtNTcuMTM5MiAyMS42MDY0LTAuNzY4YzEwLjI0LTAuNDYwOCAxNC41OTItMi43MTM2IDE2Ljk5ODQtNC43NjE2bDEuMjI4OC01LjQyNzJjMC45NzI4LTUuNTgwOCAxLjYzODQtMTQuNDM4NCAxLjU4NzItMjUuOTA3Mkw0MzcuNzA4OCA1MDcuOTA0YzAuMjU2LTE3Ljc2NjQtMi4zNTUyLTI5LjkwMDgtMy40ODE2LTMyLjU2MzJsMCAwTDQzMS42MTYgNDc0LjA2MDhDNDI4Ljg1MTIgNDczLjA4OCA0MjMuOTM2IDQ3Mi4wNjQgNDE3LjE3NzYgNDcxLjY1NDRMMzk2LjI4OCA0NzAuMzc0NCAzOTYuMjg4IDQxMy40OTEybDE4OS40OTEyIDAgMCAyOTYuMjk0NGMtMC4zMDcyIDE3LjcxNTIgMi40MDY0IDI5Ljc5ODQgMy40MzA0IDMyLjU2MzJsMC4wNTEyIDAgMi43MTM2IDEuMTc3NmMyLjgxNiAwLjk3MjggNy43ODI0IDEuOTk2OCAxNC42OTQ0IDIuMzU1MmwyMC44ODk2IDEuMjhMNjI3LjU1ODQgNzY4LjE1MzZ6IiBwLWlkPSIxMDgwNCIgZmlsbD0iIzQwOUVGRiI+PC9wYXRoPjwvc3ZnPg==) 50% 50% no-repeat;background-size:85%}.iziToast>.iziToast-body .iziToast-icon.ico-warning{background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNTU1NzcwODczNzUzIiBjbGFzcz0iaWNvbiIgc3R5bGU9IiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjUxMTgiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PGRlZnM+PHN0eWxlIHR5cGU9InRleHQvY3NzIj48L3N0eWxlPjwvZGVmcz48cGF0aCBkPSJNNTEyLjAyMzI3MyAxMDI0Qzc5NC43NjM2MzYgMTAyNCAxMDI0IDc5NC43ODY5MDkgMTAyNCA1MTEuOTc2NzI3IDEwMjQgMjI5LjIzNjM2NCA3OTQuNzg2OTA5LTAuMDIzMjczIDUxMi4wMjMyNzMtMC4wMjMyNzNTMCAyMjkuMjEzMDkxIDAgNTExLjk3NjcyN0MwIDc5NC43ODY5MDkgMjI5LjIzNjM2NCAxMDI0IDUxMi4wMjMyNzMgMTAyNE00NjkuMzQxMDkxIDc2OGMwLTIzLjU1MiAxOC45MjA3MjctNDIuNjU4OTA5IDQyLjcwNTQ1NS00Mi42NTg5MDkgMjMuNTUyIDAgNDIuNjU4OTA5IDE4LjkyMDcyNyA0Mi42NTg5MDkgNDIuNjU4OTA5IDAgMjMuNTc1MjczLTE4LjkyMDcyNyA0Mi43MDU0NTUtNDIuNjU4OTA5IDQyLjcwNTQ1NUM0ODguNDcxMjczIDgxMC43MDU0NTUgNDY5LjM0MTA5MSA3OTEuNzM4MTgyIDQ2OS4zNDEwOTEgNzY4TTQ2OS4zNDEwOTEgMjU1LjgxMzgxOGMwLTIzLjQ1ODkwOSAxOC45MjA3MjctNDIuNDcyNzI3IDQyLjcwNTQ1NS00Mi40NzI3MjcgMjMuNTUyIDAgNDIuNjU4OTA5IDE5LjQzMjcyNyA0Mi42NTg5MDkgNDIuNDcyNzI3bDAgMzQxLjczNjcyN2MwIDIzLjQ1ODkwOS0xOC45MjA3MjcgNDIuNDcyNzI3LTQyLjY1ODkwOSA0Mi40NzI3MjctMjMuNTc1MjczIDAtNDIuNzA1NDU1LTE5LjQzMjcyNy00Mi43MDU0NTUtNDIuNDcyNzI3TDQ2OS4zNDEwOTEgMjU1LjgxMzgxOHoiIHAtaWQ9IjUxMTkiIGZpbGw9IiNmZjk5MDAiPjwvcGF0aD48L3N2Zz4=) 50% 50% no-repeat;background-size:85%}.iziToast>.iziToast-body .iziToast-icon.ico-error{background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNTU1NzcwNDI1NDkwIiBjbGFzcz0iaWNvbiIgc3R5bGU9IiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjEyNjUiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PGRlZnM+PHN0eWxlIHR5cGU9InRleHQvY3NzIj48L3N0eWxlPjwvZGVmcz48cGF0aCBkPSJNNTExLjk5NjQxOCAyMy41MjA2OTNjLTI2OS43NjcwNSAwLTQ4OC40NTQ3NDggMjE4LjY4ODcyMS00ODguNDU0NzQ4IDQ4OC40NTQ3NDggMCAyNjkuNzY4MDczIDIxOC42ODg3MjEgNDg4LjQ1MzcyNCA0ODguNDU0NzQ4IDQ4OC40NTM3MjQgMjY5Ljc2NjAyNyAwIDQ4OC40NTQ3NDgtMjE4LjY4NTY1MSA0ODguNDU0NzQ4LTQ4OC40NTM3MjRDMTAwMC40NTExNjYgMjQyLjIwOTQxNCA3ODEuNzYyNDQ1IDIzLjUyMDY5MyA1MTEuOTk2NDE4IDIzLjUyMDY5M3pNNzY5LjMzNDM5MSA3MTUuMTU1OTU2bC01NC4xNTY0MzQgNTQuMTU2NDM0TDUxMS45OTY0MTggNTY2LjEyOTgyOCAzMDguODEzODU2IDc2OS4zMTIzOWwtNTQuMTU1NDExLTU0LjE1NjQzNEw0NTcuODQxMDA4IDUxMS45NzU0NDEgMjU0LjY1ODQ0NiAzMDguNzkyODc4bDU0LjE1NTQxMS01NC4xNTU0MTFMNTExLjk5NjQxOCA0NTcuODIwMDNsMjAzLjE4MjU2Mi0yMDMuMTgyNTYyIDU0LjE1NjQzNCA1NC4xNTU0MTFMNTY2LjE1MTgyOSA1MTEuOTc1NDQxIDc2OS4zMzQzOTEgNzE1LjE1NTk1NnoiIHAtaWQ9IjEyNjYiIGZpbGw9IiNGNTZDNkMiPjwvcGF0aD48L3N2Zz4=) 50% 50% no-repeat;background-size:80%}.iziToast>.iziToast-body .iziToast-icon.ico-success{background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNTU1NzcwNTI2MjA3IiBjbGFzcz0iaWNvbiIgc3R5bGU9IiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjQ5NjUiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PGRlZnM+PHN0eWxlIHR5cGU9InRleHQvY3NzIj48L3N0eWxlPjwvZGVmcz48cGF0aCBkPSJNMTAyNCA1MTEuOTk5NTAyYzAgMjgyLjc3MDU1Ny0yMjkuMjI5OTQxIDUxMi4wMDA0OTgtNTExLjk5OTUwMiA1MTIuMDAwNDk4LTI4Mi43Njk1NjEgMC01MTIuMDAwNDk4LTIyOS4yMjk5NDEtNTEyLjAwMDQ5OC01MTIuMDAwNDk4IDAtMjgyLjc2ODU2NiAyMjkuMjMwOTM2LTUxMS45OTk1MDIgNTEyLjAwMDQ5OC01MTEuOTk5NTAyQzc5NC43NjkwNjQgMCAxMDI0IDIyOS4yMzA5MzYgMTAyNCA1MTEuOTk5NTAyek03OTYuNTc3MDgxIDM3OC4zMTc3MTNsLTQ4LjQ1OTA1MS00OC40NTkwNTEtMjk3LjA3ODM4NyAyOTcuMDc3MzkyTDI3Ny4yNjc4NTIgNDUzLjE2NTI1OGwtNDguNDU4MDU2IDQ4LjQ1ODA1NiAyMjIuMjI4ODUxIDIyMi4yMzA4NDJMNzk2LjU3NzA4MSAzNzguMzE3NzEzeiIgcC1pZD0iNDk2NiIgZmlsbD0iIzY3YzIzYSI+PC9wYXRoPjwvc3ZnPg==) 50% 50% no-repeat;background-size:85%}.iziToast>.iziToast-body .iziToast-icon.ico-question{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAQAAAAAYLlVAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAAmJLR0QAAKqNIzIAAAAJcEhZcwAADdcAAA3XAUIom3gAAAAHdElNRQfhCQkUEhFovxTxAAAEDklEQVRo3s2ZTWgTQRTHf03ipTRUqghNSgsRjHgQrFUQC6JgD1Kak3gQUUoPqRdBglf1oBehBws9Cn4cGk+1SOmh2upBxAYVoeJHrR9tgq0i1Cq0lqYeks7MbpPdmU00/c8hm9n33v/t7Nt5M2+qMEWQI0QIibZKRrQpHvLL2KI2wnQzzBKrDm2RIeKEy01dTYKUI7G1ZRknQXV5yP10kTYgly1NF/5S6duZ8ES+1iZodyaocrjXxE0OFeifYYgp0mRIkwFChAkRJsIxGgrIP+I0n82fvZW5dc/zkss0O2o1c5mX6/TmaDWl77RFe5YkUW3tKEmyFv0lOvXJ/fTYnmCEFuMRbGHEZqVHLyT9DFjUJmkzJl9DG5MWWwM6Llif/gF1nukB6nhgGwUXdFrE+wiURA8QoM9i0zEWWpXQW+ZsyeRrOMuyEo5Fv4gmy4dXPvqcC+pH2VRYaMwy+OWG+iLGCgm0W0Kv9HdvR8ASjmKCXpuK/bxiV/76A/v5UdDIZuKcJGjrnec5KZ7wwsWFOp6xPX/9mt2sqDe7FO+Kf/fXHBPPDWpdXGhTpLvUG9VKwh1xMDDjkvu+cNDFBTk7ptX1QkKZ850m3duu6fcrWxwdaFFyREJ2j4vOpKP6Du6z4uJCv8sYJIVkCnJBGGZaBONO3roY2EqNrSfIPi7SKP4fdXyNUd6I6wbSAHEl33tFLe+FlSsusnK90A0+oEPcuufZgXnOi+u9LrKSJQZQw6LwqBnv2CKsfHORbFbyQhA6xN/pEuihSdj56Co7LWRjPiKie6gkB2LiKuUqK5kiPkLiz1QJ9K1cNXBAMoUCigNpQ9IqDtMI1HKA4/jyvUsaoSyZLA5kjOjDPFZen8Ql5TsvBskUgjciIPSX3QAXC86DT7VWvlEh/xZ+ij9BDVWJ0QL0SbZq6QaFxoLPcXPmBLveLCc4wXdDK6s+6/vwhCSniFLPXW0NJe5UB8zKCsviqpc7vGPVQFcyZbyPwGD+d5ZnxmNWlhG4xSBZZjivjIWHEQgoDkSMjMwTo54569JSE5IpA7EyJSMTyGTUAUFlO1ZKOtaHTMeL1PhYYFTcihmY2cQ5+ullj7EDkiVfVez2sCTz8yiv84djhg7IJVk81xFWJlPdfHBG0flkRC/zQFZ+DSllNtfDdUsOMCliyGX5uOzU3ZhIXFDof4m1gDuKbEx0t2YS25gVGpcMnr/I1kx3c6piB8P8ZoqEwfMX3ZyCXynJTmq/U7NUXqfUzCbWL1wqVKBQUeESzQYoUlW8TAcVL1RCxUu1G6BYXfFyfQ4VPbDI4T8d2WzgQ6sc/vmxnTsqfHCZQzUJxm1h5dxS5Tu6lQgTZ0ipqRVqSwzTbbLHMt+c19iO76tsx/cLZub+Ali+tYC93olEAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDE3LTA5LTA5VDIwOjE4OjE3KzAyOjAwjKtfjgAAACV0RVh0ZGF0ZTptb2RpZnkAMjAxNy0wOS0wOVQyMDoxODoxNyswMjowMP325zIAAAAZdEVYdFNvZnR3YXJlAHd3dy5pbmtzY2FwZS5vcmeb7jwaAAAAAElFTkSuQmCC) 50% 50% no-repeat;background-size:85%}.iziToast>.iziToast-body .iziToast-icon.ico-load{background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNTQ1NTUyMzAyOTE3IiBjbGFzcz0iaWNvbiIgc3R5bGU9IiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjQyNDAiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PGRlZnM+PHN0eWxlIHR5cGU9InRleHQvY3NzIj48L3N0eWxlPjwvZGVmcz48cGF0aCBkPSJNNTEyIDY0YzI0Ny4yIDAgNDQ4IDIwMC44IDQ0OCA0NDhoLTY0YzAtMjEyLTE3Mi0zODQtMzg0LTM4NFY2NHogbTAgODMyYy0yMTIgMC0zODQtMTcyLTM4NC0zODRINjRjMCAyNDcuMiAyMDAuOCA0NDggNDQ4IDQ0OHYtNjR6IiBwLWlkPSI0MjQxIiBmaWxsPSIjMUU5RkZGIj48L3BhdGg+PC9zdmc+) 50% 50% no-repeat;background-size:85%;animation:rotating 1.2s linear infinite}@keyframes rotating{from{transform:rotate(0)}to{transform:rotate(360deg)}}.iziToast>.iziToast-body .iziToast-title{margin:0 0 10px;color:#303133}.iziToast>.iziToast-body .iziToast-message{margin:0;color:#606266}.iziToast.iziToast-animateInside .iziToast-buttons-child,.iziToast.iziToast-animateInside .iziToast-icon,.iziToast.iziToast-animateInside .iziToast-inputs-child,.iziToast.iziToast-animateInside .iziToast-message,.iziToast.iziToast-animateInside .iziToast-title{opacity:0}.iziToast-target{position:relative;width:100%;margin:0 auto}.iziToast-target .iziToast-capsule{overflow:hidden}.iziToast-target .iziToast-capsule:after{visibility:hidden;display:block;font-size:0;content:" ";clear:both;height:0}.iziToast-target .iziToast-capsule .iziToast{width:100%;float:left}.iziToast-wrapper{z-index:19891101;position:fixed;width:100%;pointer-events:none;display:flex;flex-direction:column}.iziToast-wrapper .iziToast.iziToast-balloon:before{border-right:0 solid transparent;border-left:15px solid transparent;border-top:10px solid #000;border-top-color:inherit;right:8px;left:auto}.iziToast-wrapper-bottomLeft{left:0;bottom:0;text-align:left}.iziToast-wrapper-bottomLeft .iziToast.iziToast-balloon:before{border-right:15px solid transparent;border-left:0 solid transparent;right:auto;left:8px}.iziToast-wrapper-bottomRight{right:0;bottom:0;text-align:right}.iziToast-wrapper-topLeft{left:0;top:0;text-align:left}.iziToast-wrapper-topLeft .iziToast.iziToast-balloon:before{border-right:15px solid transparent;border-left:0 solid transparent;right:auto;left:8px}.iziToast-wrapper-topRight{top:0;right:0;text-align:right}.iziToast-wrapper-topCenter{top:0;left:0;right:0;text-align:center}.iziToast-wrapper-bottomCenter{bottom:0;left:0;right:0;text-align:center}.iziToast-wrapper-center{top:0;bottom:0;left:0;right:0;text-align:center;justify-content:center;flex-flow:column;align-items:center}.iziToast-rtl{direction:rtl;padding:8px 0 9px 45px;font-family:Tahoma,Lato,Arial}.iziToast-rtl .iziToast-cover{left:auto;right:0}.iziToast-rtl .iziToast-close{right:auto;left:0}.iziToast-rtl .iziToast-body{padding:0 10px 0 0;margin:0 16px 0 0;text-align:right}.iziToast-rtl .iziToast-body .iziToast-buttons,.iziToast-rtl .iziToast-body .iziToast-inputs,.iziToast-rtl .iziToast-body .iziToast-message,.iziToast-rtl .iziToast-body .iziToast-texts,.iziToast-rtl .iziToast-body .iziToast-title{float:right;text-align:right}.iziToast-rtl .iziToast-body .iziToast-icon{left:auto;right:0}@media only screen and (min-width:568px){.iziToast-wrapper{padding:10px 15px}.iziToast{width:auto}.iziToast:not(.iziToast-rtl) .iziToast-cover{border-radius:3px 0 0 3px}.iziToast.iziToast-rtl .iziToast-cover{border-radius:0 3px 3px 0}.iziToast.iziToast-color-dark:after{box-shadow:inset 0 -10px 20px -10px rgba(255,255,255,.3),0 10px 10px -5px rgba(0,0,0,.25)}.iziToast.iziToast-balloon .iziToast-progressbar{background:0 0}.iziToast.iziToast-balloon:after{box-shadow:0 10px 10px -5px rgba(0,0,0,.25),inset 0 10px 20px -5px rgba(0,0,0,.25)}.iziToast-target .iziToast:after{box-shadow:inset 0 -10px 20px -10px rgba(0,0,0,.2),inset 0 0 5px rgba(0,0,0,.1)}}.iziToast.iziToast-theme-dark{background:#565c70;border-color:#565c70}.iziToast.iziToast-theme-dark .iziToast-title{color:#fff}.iziToast.iziToast-theme-dark .iziToast-message{color:rgba(255,255,255,.9);font-weight:300}.iziToast.iziToast-theme-dark .iziToast-close{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAQAAADZc7J/AAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAAmJLR0QAAKqNIzIAAAAJcEhZcwAADdcAAA3XAUIom3gAAAAHdElNRQfgCR4OIQIPSao6AAAAwElEQVRIx72VUQ6EIAwFmz2XB+AConhjzqTJ7JeGKhLYlyx/BGdoBVpjIpMJNjgIZDKTkQHYmYfwmR2AfAqGFBcO2QjXZCd24bEggvd1KBx+xlwoDpYmvnBUUy68DYXD77ESr8WDtYqvxRex7a8oHP4Wo1Mkt5I68Mc+qYqv1h5OsZmZsQ3gj/02h6cO/KEYx29hu3R+VTTwz6D3TymIP1E8RvEiiVdZfEzicxYLiljSxKIqlnW5seitTW6uYnv/Aqh4whX3mEUrAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDE2LTA5LTMwVDE0OjMzOjAyKzAyOjAwl6RMVgAAACV0RVh0ZGF0ZTptb2RpZnkAMjAxNi0wOS0zMFQxNDozMzowMiswMjowMOb59OoAAAAZdEVYdFNvZnR3YXJlAHd3dy5pbmtzY2FwZS5vcmeb7jwaAAAAAElFTkSuQmCC) 50% 50% no-repeat;background-size:8px}.iziToast.iziToast-theme-dark .iziToast-icon{color:#fff}.iziToast.iziToast-theme-dark .iziToast-icon.ico-info{background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNTQxNjQ5NjA1MTc2IiBjbGFzcz0iaWNvbiIgc3R5bGU9IiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjM1MzIiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMTI4IiBoZWlnaHQ9IjEyOCI+PGRlZnM+PHN0eWxlIHR5cGU9InRleHQvY3NzIj48L3N0eWxlPjwvZGVmcz48cGF0aCBkPSJNODUxLjE3MTU1NiA3MTcuOTM3Nzc4YzMuMjQyNjY3IDExLjk0NjY2NyAyLjg0NDQ0NCAyNC40NjIyMjItMS40MjIyMjMgMzYuNDA4ODg5YTYyLjkxOTExMSA2Mi45MTkxMTEgMCAwIDEtMjEuOTU5MTExIDI5LjUyNTMzMyA2NS4yNTE1NTYgNjUuMjUxNTU2IDAgMCAxLTM4LjkxMiAxMi41MTU1NTZIMTc4LjExOTExMWE2NC44NTMzMzMgNjQuODUzMzMzIDAgMCAxLTM4Ljc5ODIyMi0xMi41NzI0NDUgNjIuMjM2NDQ0IDYyLjIzNjQ0NCAwIDAgMS0yMi4wMTYtMjkuNTI1MzMzIDYwLjY0MzU1NiA2MC42NDM1NTYgMCAwIDEtMS4zNjUzMzMtMzYuNDA4ODg5YzMuNTg0LTEzLjE0MTMzMyAxMS40MzQ2NjctMjQuNTc2IDIyLjY5ODY2Ni0zMy4xMDkzMzNsNTguNDgxNzc4LTQ0LjAzMmE0MC43MzI0NDQgNDAuNzMyNDQ0IDAgMCAwIDE2LjQ5Nzc3OC0zMi43MTExMTJ2LTIwMy4wOTMzMzNjMC0zNS4yMTQyMjIgNy4xNjgtNjkuNTE4MjIyIDIxLjIxOTU1NS0xMDEuNzE3MzMzIDEzLjY1MzMzMy0zMS4xNzUxMTEgMzMuMTA5MzMzLTU5LjE2NDQ0NCA1Ny44NTYtODMuMTE0NjY3QTI2OC44NTY4ODkgMjY4Ljg1Njg4OSAwIDAgMSA0MTQuNzIgMTUyLjA2NHYtMjguNTAxMzMzQzQxNC43MiA4Ni44MTI0NDQgNDQ1LjYxMDY2NyA1Ni44ODg4ODkgNDgzLjU1NTU1NiA1Ni44ODg4ODljMzcuOTQ0ODg5IDAgNjguODM1NTU2IDI5LjkyMzU1NiA2OC44MzU1NTUgNjYuNjczNzc4djI4LjUwMTMzM2MxMi4zNDQ4ODkgMy4xODU3NzggMjQuNDYyMjIyIDcuMTY4IDM2LjIzODIyMiAxMi4wMDM1NTZhMjY4LjY4NjIyMiAyNjguNjg2MjIyIDAgMCAxIDg1Ljc4ODQ0NSA1Ni4wMzU1NTVjMjQuNzQ2NjY3IDI0LjAwNzExMSA0NC4yMDI2NjcgNTEuOTM5NTU2IDU3Ljc5OTExMSA4My4wNTc3NzggMTQuMTA4NDQ0IDMyLjMxMjg4OSAyMS4yMTk1NTYgNjYuNTYgMjEuMjE5NTU1IDEwMS44MzExMTF2MjAzLjA5MzMzM2MwIDEyLjg1Njg4OSA2LjAzMDIyMiAyNC44NjA0NDQgMTYuNTU0NjY3IDMyLjcxMTExMWw1OC40ODE3NzggNDQuMDMyYzExLjIwNzExMSA4LjUzMzMzMyAxOS4wNTc3NzggMTkuOTExMTExIDIyLjc1NTU1NSAzMy4wNTI0NDV6TTM5OC4yMjIyMjIgODU2LjE3Nzc3OFY4NTMuMzMzMzMzaDE3MC42NjY2Njd2Mi44NDQ0NDVDNTY4Ljg4ODg4OSA5MzUuOTM2IDUzMC42MDI2NjcgOTY3LjExMTExMSA0ODMuNTU1NTU2IDk2Ny4xMTExMTFTMzk4LjIyMjIyMiA5MzUuOTM2IDM5OC4yMjIyMjIgODU2LjE3Nzc3OHoiIHAtaWQ9IjM1MzMiIGZpbGw9IiNmZmZmZmYiPjwvcGF0aD48L3N2Zz4=) 50% 50% no-repeat;background-size:85%}.iziToast.iziToast-theme-dark .iziToast-icon.ico-warning{background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNTQxNjUxMTE1OTQ4IiBjbGFzcz0iaWNvbiIgc3R5bGU9IiIgdmlld0JveD0iMCAwIDEwMjUgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjUwOTYiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMTI4LjEyNSIgaGVpZ2h0PSIxMjgiPjxkZWZzPjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+PC9zdHlsZT48L2RlZnM+PHBhdGggZD0iTTk4NC4wMjI5NTAwMiA3NDYuODc1NDk3NUw2NDEuOTY0NjA3NTIgMTMwLjM4MDY1Yy0zMC40OTE4NDI1LTU0Ljg2MTUwMjUtNzcuOTMxMzE1LTg2LjMzNTY3MjUtMTMwLjE0MzUxLTg2LjMzNTY3MjUtNTIuMjkxNTc1IDAtOTkuNzQwOTcgMzEuNTEzODYtMTMwLjE0MzUxIDg2LjQzNDg5NzVMMzkuOTc2NDU1MDIgNzQ2LjgyNTg4NUM5Ljk2MDg5MjUyIDgwMC45NjMwNDUgNy45MTY4NTc1MiA4NTguMDE3NDIgMzQuMzUwMzk3NTIgOTAzLjM1MzMyMjVjMjYuNTEyOTIgNDUuNDc0ODE3NSA3Ny4xOTcwNSA3MS41NjEwNyAxMzkuMDczNzYgNzEuNTYxMDdoNjc3LjIyMDU0NzVjNjEuOTA2NDc3NSAwIDExMi41OTA2MDc1LTI2LjA4NjI1MjUgMTM5LjAxNDIyNS03MS40OTE2MTI1IDI2LjQ4MzE1MjUtNDUuMjc2MzY3NSAyNC40MjkxOTUtMTAyLjM0MDY2NS01LjYzNTk4LTE1Ni41NDcyODI1ek05MTEuNzU3MzgyNTIgODU3Ljk5NzU3NWMtOS44OTI3MzI1IDE2Ljk4NzMyLTMyLjE1ODgyMjUgMjYuNzMxMjE1LTYxLjExMjY3NzUgMjYuNzMxMjE1SDE3My40MjQxNTc1MmMtMjguOTQzOTMyNSAwLTUxLjIyOTg2NzUtOS43NjM3NC02MS4xNjIyOS0yNi43OTA3NS0xMC4wMjE3MjUtMTcuMTg1NzctNy42MTA1NTc1LTQxLjc0Mzk1NzUgNi41ODg1NC02Ny4zNzM3NzVsMzQxLjcxMTA1NS02MTYuMzY1ODU1YzE0LjA2MDE4MjUtMjUuMzkxNjc3NSAzMi43NTQxNzI1LTM5Ljk1NzkwNzUgNTEuMjU5NjM1LTM5Ljk1NzkwNzUgMTguNDk1NTQgMCAzNy4xOTk0NTI1IDE0LjU2NjIzIDUxLjMwOTI0NzUgMzkuOTM4MDYyNWwzNDIuMDI4NTc1IDYxNi40NDUyMzVjMTQuMjI4ODY1IDI1LjY0OTY2MjUgMTYuNjQwMDMyNSA1MC4xODgwMDUgNi41OTg0NjI1IDY3LjM3Mzc3NXoiIGZpbGw9IiNmZmZmZmYiIHAtaWQ9IjUwOTciPjwvcGF0aD48cGF0aCBkPSJNNTEyLjAxOTU0NzUyIDYzMC4yODYxMjI1YTQ1LjA4Nzg0IDQ1LjA4Nzg0IDAgMCAwIDQ1LjA5Nzc2MjUtNDUuMDA4NDZWMzc0LjY1Mjc1NWE0NS4wNzc5MTc1IDQ1LjA3NzkxNzUgMCAwIDAtNDUuMDk3NzYyNS00NS4wMDg0NiA0NS4wODc4NCA0NS4wODc4NCAwIDAgMC00NS4wOTc3NjI1IDQ1LjAwODQ2djIxMC42MTQ5ODVhNDUuMDg3ODQgNDUuMDg3ODQgMCAwIDAgNDUuMDk3NzYyNSA0NS4wMTgzODI1ek01MTIuMDE5NTQ3NTIgNjc1LjM3Mzk2MjVhNjAuMTcwMDQgNjAuMTcwMDQgMCAwIDAtNjAuMTMwMzUgNjAuMTMwMzVjMCAzMy4xNDExNSAyNi45MTk3NDI1IDYwLjEzMDM1IDYwLjEzMDM1IDYwLjEzMDM1IDMzLjE0MTE1IDAgNjAuMTMwMzUtMjYuOTE5NzQyNSA2MC4xMzAzNS02MC4xMzAzNSAwLTMzLjE0MTE1LTI2LjkxOTc0MjUtNjAuMTMwMzUtNjAuMTMwMzUtNjAuMTMwMzV6IiBmaWxsPSIjZmZmZmZmIiBwLWlkPSI1MDk4Ij48L3BhdGg+PC9zdmc+) 50% 50% no-repeat;background-size:85%}.iziToast.iziToast-theme-dark .iziToast-icon.ico-error{background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNTQxNjUxMzE1NTQ3IiBjbGFzcz0iaWNvbiIgc3R5bGU9IiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjY4MDYiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMTI4IiBoZWlnaHQ9IjEyOCI+PGRlZnM+PHN0eWxlIHR5cGU9InRleHQvY3NzIj48L3N0eWxlPjwvZGVmcz48cGF0aCBkPSJNNzcyLjI2NjY2NyA4ODMuMmMyNS42IDI1LjYgNjQgMjUuNiA4OS42IDAgMjUuNi0yNS42IDI1LjYtNjQgMC04OS42TDIzMC40IDE2Mi4xMzMzMzNjLTI1LjYtMjUuNi02NC0yNS42LTg5LjYgMC0yNS42IDI1LjYtMjUuNiA2NCAwIDg5LjZsNjMxLjQ2NjY2NyA2MzEuNDY2NjY3eiIgcC1pZD0iNjgwNyIgZmlsbD0iI2ZmZmZmZiI+PC9wYXRoPjxwYXRoIGQ9Ik04NjEuODY2NjY3IDI1MS43MzMzMzNjMjUuNi0yNS42IDI1LjYtNjQgMC04OS42LTI1LjYtMjUuNi02NC0yNS42LTg5LjYgMEwxNDAuOCA3OTMuNmMtMjUuNiAyNS42LTI1LjYgNjQgMCA4OS42czY0IDI1LjYgODkuNiAwbDYzMS40NjY2NjctNjMxLjQ2NjY2N3oiIHAtaWQ9IjY4MDgiIGZpbGw9IiNmZmZmZmYiPjwvcGF0aD48L3N2Zz4=) 50% 50% no-repeat;background-size:80%}.iziToast.iziToast-theme-dark .iziToast-icon.ico-success{background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNTQxNjUxMjQyNTMxIiBjbGFzcz0iaWNvbiIgc3R5bGU9IiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjYwMjMiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMTI4IiBoZWlnaHQ9IjEyOCI+PGRlZnM+PHN0eWxlIHR5cGU9InRleHQvY3NzIj48L3N0eWxlPjwvZGVmcz48cGF0aCBkPSJNNDA0LjI1MTQyOCA4MDkuNjEwN2MtMTEuNjY0MTAyIDAtMjMuMzI3MTc5LTQuNDQ4NzgyLTMyLjIyNTc2Ny0xMy4zNDczNjlMODMuOTgwMDk4IDUwOC4yMTk4MTVjLTE3Ljc5ODE5OS0xNy43OTcxNzUtMTcuNzk4MTk5LTQ2LjY1MzMzNSAwLTY0LjQ1MTUzM3M0Ni42NTMzMzUtMTcuNzk4MTk5IDY0LjQ1MTUzNCAwbDI4OC4wNDQ1MzkgMjg4LjA0MjQ5MWMxNy43OTgxOTkgMTcuNzk4MTk5IDE3Ljc5ODE5OSA0Ni42NTQzNTkgMCA2NC40NTI1NTgtOC44OTc1NjMgOC44OTg1ODctMjAuNTYxNjY1IDEzLjM0NzM2OS0zMi4yMjQ3NDMgMTMuMzQ3MzY5eiIgcC1pZD0iNjAyNCIgZmlsbD0iI2ZmZmZmZiI+PC9wYXRoPjxwYXRoIGQ9Ik00MDQuMjczOTUzIDgwOS42MTE3MjNjLTExLjY2NDEwMiAwLTIzLjMyNjE1NS00LjQ0OTgwNi0zMi4yMjU3NjYtMTMuMzQ4MzkyLTE3Ljc5ODE5OS0xNy43OTcxNzUtMTcuNzk5MjIyLTQ2LjY1MzMzNS0wLjAwMTAyNC02NC40NTE1MzRMODc2LjEwMTgxMyAyMjcuNzM1NjQ2YzE3Ljc5NjE1MS0xNy43OTgxOTkgNDYuNjUzMzM1LTE3Ljc5OTIyMiA2NC40NTE1MzMtMC4wMDEwMjQgMTcuNzk4MTk5IDE3Ljc5NzE3NSAxNy43OTkyMjIgNDYuNjUzMzM1IDAuMDAxMDI0IDY0LjQ1MTUzM0w0MzYuNTAwNzQ0IDc5Ni4yNjIzMDdjLTguODk4NTg3IDguODk4NTg3LTIwLjU2MjY4OSAxMy4zNDk0MTctMzIuMjI2NzkxIDEzLjM0OTQxNnoiIHAtaWQ9IjYwMjUiIGZpbGw9IiNmZmZmZmYiPjwvcGF0aD48L3N2Zz4=) 50% 50% no-repeat;background-size:85%}.iziToast.iziToast-theme-dark .iziToast-icon.ico-question{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAQAAAAAYLlVAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAAmJLR0QAAKqNIzIAAAAJcEhZcwAADdcAAA3XAUIom3gAAAAHdElNRQfhCQkUEg18vki+AAAETUlEQVRo3s1ZTWhbRxD+VlIuxsLFCYVIIQYVopBDoK5bKDWUBupDMNbJ5FBKg/FBziUQdE9yaC+FHBrwsdCfQ9RTGoLxwWl+DqHEojUFFydxnB9bInZDqOsErBrr6yGvs/ueX97bldTKo4Pe7puZb3Z33s7srIIjMY1jyCEjP6ImvyX8pF64arSHznKC06wzijY5xSKz7YbuYokV2lODsyyxqz3gSY6z6gCuqcpxJluFH+Z8U+D/0jyHoxFUBHgfvsGHIS9WMIUlVFFDFTUAGWSRQRY5HMeBEP6b+Ew9dh/7INd2jGeO59kfKdXP85zbIbfGQVf4sYC3N1hm3lo6zzIbPvk6x+zBk7wQGMEMB5xncIAzAS0XrFySSV72iS1yyBVcdA1x0afrsoUJgdFfY2+z8ADAXl7zz0KcwJiPfZKpVuABgClO+nRG+QIHDdfb4qlWwUXvKW4Z7vi6L4J9vg+vbfCeCeZH2RfOdMOc/HbCA4BvIW6EMQz7XK/ltd+hP+VzR9mgva2YSfyGI17fA7ynnocqeQNFfIJ0oHsdv6CC2+rXGBN6cQdveY3fcVRtmy/HDete+93zy8jA8zV7YkwYMrjHzRddRsCdiVCwwmh6wg9iTNC7Y9XIF1iS7kbUpsvvGEdPuTfSgAEjRpR096x0liPFD/Eqt2NMuBQzB2XhrACAApjFsuQFh9XdGAX70B3oSuNdnMVBaX+sopYxjwVpHFBVACyKTXNoktjD+6Ll8xhenS9MAAkAI/Lux2YNUOs4I413Ypg1SgEAu7kpFvWjaeJe0fJHDGe/cNaZBkekudw8PMA+0fMwlndZeAsJ5KR/qhUDUJCnSiyvRsolkJHGUgvjH8QXDgZopEzKMKDqCKrwEQ4C6MH7GEXC665buLJG8hlQc4LP4paxfJrOqYVYYY2UARfEIazTbgDg2dB98GebzJd54b8L/iWNdLyooeR6CHyZ+6xk0yKxkYg6nEVSUG4VJ9QJ9cxRCxO+9WiOyvgUeexXP1hLGH5nGuBWVtiSp4vqe3VP0UFWI9Wan4Er3v8q7jjPWVtm4FtcQQMrOKO2nOQCM5AyDMi56FDrKHA/1nyppS1ppBpYaE8wciEjGI2AaeM41kI4doDX4XiT3Qm1gevyruCgZg9P8xIv8m1nCzTKq6oiJ9xTMiZ505P5m8cdZ0CnZMVXHVljM7WMBzxpyDxygtdxoCEFTaMIWbZU85UvBjgUMYy0fBaAF8V1Lj9qWQ1aMZ5f4k9r+AGMSkMP1vZoZih6k6sicc5h/OFHM9vDqU/VIU7zJZdYYsKGH4g4nAJMGiXZRds1pVMoZ69RM5vfkbh0qkBhsnS2RLMLilQdL9MBHS9UAh0v1e6CYnXHy/WeeCcvLDwl/9OVze69tPKM+M+v7eJN6OzFpWdEF0ucDbhVNFXadnVrmJFlkVNGTS2M6pzmhMvltfPhnN2B63sVuL7fcNP3D1TSk2ihosPrAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDE3LTA5LTA5VDIwOjE4OjEzKzAyOjAweOR7nQAAACV0RVh0ZGF0ZTptb2RpZnkAMjAxNy0wOS0wOVQyMDoxODoxMyswMjowMAm5wyEAAAAZdEVYdFNvZnR3YXJlAHd3dy5pbmtzY2FwZS5vcmeb7jwaAAAAAElFTkSuQmCC) 50% 50% no-repeat;background-size:85%}.iziToast.iziToast-theme-dark .iziToast-buttons>a,.iziToast.iziToast-theme-dark .iziToast-buttons>button,.iziToast.iziToast-theme-dark .iziToast-buttons>input{color:#fff;background:rgba(255,255,255,.1)}.iziToast.iziToast-theme-dark .iziToast-buttons>a:hover,.iziToast.iziToast-theme-dark .iziToast-buttons>button:hover,.iziToast.iziToast-theme-dark .iziToast-buttons>input:hover{background:rgba(255,255,255,.2)}.iziToast.iziToast-theme-dark .iziToast-buttons>a:focus,.iziToast.iziToast-theme-dark .iziToast-buttons>button:focus,.iziToast.iziToast-theme-dark .iziToast-buttons>input:focus{box-shadow:0 0 0 1px rgba(255,255,255,.6)}.iziToast.iziToast-theme-dark.iziToast-color-red{background:#f56c6c;border-color:#f56c6c}.iziToast.iziToast-theme-dark.iziToast-color-orange{background:#e6a23c;border-color:#e6a23c}.iziToast.iziToast-theme-dark.iziToast-color-yellow{background:rgba(255,249,178,.9);border-color:rgba(255,249,178,.9)}.iziToast.iziToast-theme-dark.iziToast-color-blue{background:#409eff;border-color:#409eff}.iziToast.iziToast-theme-dark.iziToast-color-green{background:#67c23a;border-color:#67c23a}.iziToast.iziToast-layout2 .iziToast-body .iziToast-message,.iziToast.iziToast-layout2 .iziToast-body .iziToast-texts{width:100%}.iziToast.iziToast-layout3{border-radius:2px}.iziToast.iziToast-layout3::after{display:none}.iziToast .revealIn,.iziToast.revealIn{-webkit-animation:iziT-revealIn 1s cubic-bezier(.25,1.6,.25,1) both;-moz-animation:iziT-revealIn 1s cubic-bezier(.25,1.6,.25,1) both;animation:iziT-revealIn 1s cubic-bezier(.25,1.6,.25,1) both}.iziToast .slideIn,.iziToast.slideIn{-webkit-animation:iziT-slideIn 1s cubic-bezier(.16,.81,.32,1) both;-moz-animation:iziT-slideIn 1s cubic-bezier(.16,.81,.32,1) both;animation:iziT-slideIn 1s cubic-bezier(.16,.81,.32,1) both}.iziToast.bounceInLeft{-webkit-animation:iziT-bounceInLeft .7s ease-in-out both;animation:iziT-bounceInLeft .7s ease-in-out both}.iziToast.bounceInRight{-webkit-animation:iziT-bounceInRight .85s ease-in-out both;animation:iziT-bounceInRight .85s ease-in-out both}.iziToast.bounceInDown{-webkit-animation:iziT-bounceInDown .7s ease-in-out both;animation:iziT-bounceInDown .7s ease-in-out both}.iziToast.bounceInUp{-webkit-animation:iziT-bounceInUp .7s ease-in-out both;animation:iziT-bounceInUp .7s ease-in-out both}.iziToast .fadeIn,.iziToast.fadeIn{-webkit-animation:iziT-fadeIn .5s ease both;animation:iziT-fadeIn .5s ease both}.iziToast.fadeInUp{-webkit-animation:iziT-fadeInUp .7s ease both;animation:iziT-fadeInUp .7s ease both}.iziToast.fadeInDown{-webkit-animation:iziT-fadeInDown .7s ease both;animation:iziT-fadeInDown .7s ease both}.iziToast.fadeInLeft{-webkit-animation:iziT-fadeInLeft .85s cubic-bezier(.25,.8,.25,1) both;animation:iziT-fadeInLeft .85s cubic-bezier(.25,.8,.25,1) both}.iziToast.fadeInRight{-webkit-animation:iziT-fadeInRight .85s cubic-bezier(.25,.8,.25,1) both;animation:iziT-fadeInRight .85s cubic-bezier(.25,.8,.25,1) both}.iziToast.flipInX{-webkit-animation:iziT-flipInX .85s cubic-bezier(.35,0,.25,1) both;animation:iziT-flipInX .85s cubic-bezier(.35,0,.25,1) both}.iziToast.fadeOut{-webkit-animation:iziT-fadeOut .7s ease both;animation:iziT-fadeOut .7s ease both}.iziToast.fadeOutDown{-webkit-animation:iziT-fadeOutDown .7s cubic-bezier(.4,.45,.15,.91) both;animation:iziT-fadeOutDown .7s cubic-bezier(.4,.45,.15,.91) both}.iziToast.fadeOutUp{-webkit-animation:iziT-fadeOutUp .7s cubic-bezier(.4,.45,.15,.91) both;animation:iziT-fadeOutUp .7s cubic-bezier(.4,.45,.15,.91) both}.iziToast.fadeOutLeft{-webkit-animation:iziT-fadeOutLeft .5s ease both;animation:iziT-fadeOutLeft .5s ease both}.iziToast.fadeOutRight{-webkit-animation:iziT-fadeOutRight .5s ease both;animation:iziT-fadeOutRight .5s ease both}.iziToast.flipOutX{-webkit-backface-visibility:visible!important;backface-visibility:visible!important;-webkit-animation:iziT-flipOutX .7s cubic-bezier(.4,.45,.15,.91) both;animation:iziT-flipOutX .7s cubic-bezier(.4,.45,.15,.91) both}.iziToast-overlay.fadeIn{-webkit-animation:iziT-fadeIn .5s ease both;animation:iziT-fadeIn .5s ease both}.iziToast-overlay.fadeOut{-webkit-animation:iziT-fadeOut .7s ease both;animation:iziT-fadeOut .7s ease both}@-webkit-keyframes iziT-revealIn{0%{opacity:0;-webkit-transform:scale3d(.3,.3,1)}100%{opacity:1}}@-moz-keyframes iziT-revealIn{0%{opacity:0;-moz-transform:scale3d(.3,.3,1)}100%{opacity:1}}@-webkit-keyframes iziT-slideIn{0%{opacity:0;-webkit-transform:translateX(50px)}100%{opacity:1;-webkit-transform:translateX(0)}}@-moz-keyframes iziT-slideIn{0%{opacity:0;-moz-transform:translateX(50px)}100%{opacity:1;-moz-transform:translateX(0)}}@-webkit-keyframes iziT-bounceInLeft{0%{opacity:0;-webkit-transform:translateX(280px)}50%{opacity:1;-webkit-transform:translateX(-20px)}70%{-webkit-transform:translateX(10px)}100%{-webkit-transform:translateX(0)}}@-webkit-keyframes iziT-bounceInRight{0%{opacity:0;-webkit-transform:translateX(-280px)}50%{opacity:1;-webkit-transform:translateX(20px)}70%{-webkit-transform:translateX(-10px)}100%{-webkit-transform:translateX(0)}}@-webkit-keyframes iziT-bounceInDown{0%{opacity:0;-webkit-transform:translateY(-200px)}50%{opacity:1;-webkit-transform:translateY(10px)}70%{-webkit-transform:translateY(-5px)}100%{-webkit-transform:translateY(0)}}@-webkit-keyframes iziT-bounceInUp{0%{opacity:0;-webkit-transform:translateY(200px)}50%{opacity:1;-webkit-transform:translateY(-10px)}70%{-webkit-transform:translateY(5px)}100%{-webkit-transform:translateY(0)}}@-moz-keyframes iziT-revealIn{0%{opacity:0;transform:scale3d(.3,.3,1)}100%{opacity:1}}@-webkit-keyframes iziT-revealIn{0%{opacity:0;transform:scale3d(.3,.3,1)}100%{opacity:1}}@-o-keyframes iziT-revealIn{0%{opacity:0;transform:scale3d(.3,.3,1)}100%{opacity:1}}@keyframes iziT-revealIn{0%{opacity:0;transform:scale3d(.3,.3,1)}100%{opacity:1}}@-moz-keyframes iziT-slideIn{0%{opacity:0;transform:translateX(50px)}100%{opacity:1;transform:translateX(0)}}@-webkit-keyframes iziT-slideIn{0%{opacity:0;transform:translateX(50px)}100%{opacity:1;transform:translateX(0)}}@-o-keyframes iziT-slideIn{0%{opacity:0;transform:translateX(50px)}100%{opacity:1;transform:translateX(0)}}@keyframes iziT-slideIn{0%{opacity:0;transform:translateX(50px)}100%{opacity:1;transform:translateX(0)}}@-moz-keyframes iziT-bounceInLeft{0%{opacity:0;transform:translateX(280px)}50%{opacity:1;transform:translateX(-20px)}70%{transform:translateX(10px)}100%{transform:translateX(0)}}@-webkit-keyframes iziT-bounceInLeft{0%{opacity:0;transform:translateX(280px)}50%{opacity:1;transform:translateX(-20px)}70%{transform:translateX(10px)}100%{transform:translateX(0)}}@-o-keyframes iziT-bounceInLeft{0%{opacity:0;transform:translateX(280px)}50%{opacity:1;transform:translateX(-20px)}70%{transform:translateX(10px)}100%{transform:translateX(0)}}@keyframes iziT-bounceInLeft{0%{opacity:0;transform:translateX(280px)}50%{opacity:1;transform:translateX(-20px)}70%{transform:translateX(10px)}100%{transform:translateX(0)}}@-moz-keyframes iziT-bounceInRight{0%{opacity:0;transform:translateX(-280px)}50%{opacity:1;transform:translateX(20px)}70%{transform:translateX(-10px)}100%{transform:translateX(0)}}@-webkit-keyframes iziT-bounceInRight{0%{opacity:0;transform:translateX(-280px)}50%{opacity:1;transform:translateX(20px)}70%{transform:translateX(-10px)}100%{transform:translateX(0)}}@-o-keyframes iziT-bounceInRight{0%{opacity:0;transform:translateX(-280px)}50%{opacity:1;transform:translateX(20px)}70%{transform:translateX(-10px)}100%{transform:translateX(0)}}@keyframes iziT-bounceInRight{0%{opacity:0;transform:translateX(-280px)}50%{opacity:1;transform:translateX(20px)}70%{transform:translateX(-10px)}100%{transform:translateX(0)}}@-moz-keyframes iziT-bounceInDown{0%{opacity:0;transform:translateY(-200px)}50%{opacity:1;transform:translateY(10px)}70%{transform:translateY(-5px)}100%{transform:translateY(0)}}@-webkit-keyframes iziT-bounceInDown{0%{opacity:0;transform:translateY(-200px)}50%{opacity:1;transform:translateY(10px)}70%{transform:translateY(-5px)}100%{transform:translateY(0)}}@-o-keyframes iziT-bounceInDown{0%{opacity:0;transform:translateY(-200px)}50%{opacity:1;transform:translateY(10px)}70%{transform:translateY(-5px)}100%{transform:translateY(0)}}@keyframes iziT-bounceInDown{0%{opacity:0;transform:translateY(-200px)}50%{opacity:1;transform:translateY(10px)}70%{transform:translateY(-5px)}100%{transform:translateY(0)}}@-moz-keyframes iziT-bounceInUp{0%{opacity:0;transform:translateY(200px)}50%{opacity:1;transform:translateY(-10px)}70%{transform:translateY(5px)}100%{transform:translateY(0)}}@-webkit-keyframes iziT-bounceInUp{0%{opacity:0;transform:translateY(200px)}50%{opacity:1;transform:translateY(-10px)}70%{transform:translateY(5px)}100%{transform:translateY(0)}}@-o-keyframes iziT-bounceInUp{0%{opacity:0;transform:translateY(200px)}50%{opacity:1;transform:translateY(-10px)}70%{transform:translateY(5px)}100%{transform:translateY(0)}}@keyframes iziT-bounceInUp{0%{opacity:0;transform:translateY(200px)}50%{opacity:1;transform:translateY(-10px)}70%{transform:translateY(5px)}100%{transform:translateY(0)}}@-moz-keyframes iziT-fadeIn{from{opacity:0}to{opacity:1}}@-webkit-keyframes iziT-fadeIn{from{opacity:0}to{opacity:1}}@-o-keyframes iziT-fadeIn{from{opacity:0}to{opacity:1}}@keyframes iziT-fadeIn{from{opacity:0}to{opacity:1}}@-moz-keyframes iziT-fadeInUp{from{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}to{opacity:1;-webkit-transform:none;transform:none}}@-webkit-keyframes iziT-fadeInUp{from{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}to{opacity:1;-webkit-transform:none;transform:none}}@-o-keyframes iziT-fadeInUp{from{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}to{opacity:1;-webkit-transform:none;transform:none}}@keyframes iziT-fadeInUp{from{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}to{opacity:1;-webkit-transform:none;transform:none}}@-moz-keyframes iziT-fadeInDown{from{opacity:0;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}to{opacity:1;-webkit-transform:none;transform:none}}@-webkit-keyframes iziT-fadeInDown{from{opacity:0;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}to{opacity:1;-webkit-transform:none;transform:none}}@-o-keyframes iziT-fadeInDown{from{opacity:0;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}to{opacity:1;-webkit-transform:none;transform:none}}@keyframes iziT-fadeInDown{from{opacity:0;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}to{opacity:1;-webkit-transform:none;transform:none}}@-moz-keyframes iziT-fadeInLeft{from{opacity:0;-webkit-transform:translate3d(300px,0,0);transform:translate3d(300px,0,0)}to{opacity:1;-webkit-transform:none;transform:none}}@-webkit-keyframes iziT-fadeInLeft{from{opacity:0;-webkit-transform:translate3d(300px,0,0);transform:translate3d(300px,0,0)}to{opacity:1;-webkit-transform:none;transform:none}}@-o-keyframes iziT-fadeInLeft{from{opacity:0;-webkit-transform:translate3d(300px,0,0);transform:translate3d(300px,0,0)}to{opacity:1;-webkit-transform:none;transform:none}}@keyframes iziT-fadeInLeft{from{opacity:0;-webkit-transform:translate3d(300px,0,0);transform:translate3d(300px,0,0)}to{opacity:1;-webkit-transform:none;transform:none}}@-moz-keyframes iziT-fadeInRight{from{opacity:0;-webkit-transform:translate3d(-300px,0,0);transform:translate3d(-300px,0,0)}to{opacity:1;-webkit-transform:none;transform:none}}@-webkit-keyframes iziT-fadeInRight{from{opacity:0;-webkit-transform:translate3d(-300px,0,0);transform:translate3d(-300px,0,0)}to{opacity:1;-webkit-transform:none;transform:none}}@-o-keyframes iziT-fadeInRight{from{opacity:0;-webkit-transform:translate3d(-300px,0,0);transform:translate3d(-300px,0,0)}to{opacity:1;-webkit-transform:none;transform:none}}@keyframes iziT-fadeInRight{from{opacity:0;-webkit-transform:translate3d(-300px,0,0);transform:translate3d(-300px,0,0)}to{opacity:1;-webkit-transform:none;transform:none}}@-moz-keyframes iziT-flipInX{from{-webkit-transform:perspective(400px) rotate3d(1,0,0,90deg);transform:perspective(400px) rotate3d(1,0,0,90deg);opacity:0}40%{-webkit-transform:perspective(400px) rotate3d(1,0,0,-20deg);transform:perspective(400px) rotate3d(1,0,0,-20deg)}60%{-webkit-transform:perspective(400px) rotate3d(1,0,0,10deg);transform:perspective(400px) rotate3d(1,0,0,10deg);opacity:1}80%{-webkit-transform:perspective(400px) rotate3d(1,0,0,-5deg);transform:perspective(400px) rotate3d(1,0,0,-5deg)}to{-webkit-transform:perspective(400px);transform:perspective(400px)}}@-webkit-keyframes iziT-flipInX{from{-webkit-transform:perspective(400px) rotate3d(1,0,0,90deg);transform:perspective(400px) rotate3d(1,0,0,90deg);opacity:0}40%{-webkit-transform:perspective(400px) rotate3d(1,0,0,-20deg);transform:perspective(400px) rotate3d(1,0,0,-20deg)}60%{-webkit-transform:perspective(400px) rotate3d(1,0,0,10deg);transform:perspective(400px) rotate3d(1,0,0,10deg);opacity:1}80%{-webkit-transform:perspective(400px) rotate3d(1,0,0,-5deg);transform:perspective(400px) rotate3d(1,0,0,-5deg)}to{-webkit-transform:perspective(400px);transform:perspective(400px)}}@-o-keyframes iziT-flipInX{from{-webkit-transform:perspective(400px) rotate3d(1,0,0,90deg);transform:perspective(400px) rotate3d(1,0,0,90deg);opacity:0}40%{-webkit-transform:perspective(400px) rotate3d(1,0,0,-20deg);transform:perspective(400px) rotate3d(1,0,0,-20deg)}60%{-webkit-transform:perspective(400px) rotate3d(1,0,0,10deg);transform:perspective(400px) rotate3d(1,0,0,10deg);opacity:1}80%{-webkit-transform:perspective(400px) rotate3d(1,0,0,-5deg);transform:perspective(400px) rotate3d(1,0,0,-5deg)}to{-webkit-transform:perspective(400px);transform:perspective(400px)}}@keyframes iziT-flipInX{from{-webkit-transform:perspective(400px) rotate3d(1,0,0,90deg);transform:perspective(400px) rotate3d(1,0,0,90deg);opacity:0}40%{-webkit-transform:perspective(400px) rotate3d(1,0,0,-20deg);transform:perspective(400px) rotate3d(1,0,0,-20deg)}60%{-webkit-transform:perspective(400px) rotate3d(1,0,0,10deg);transform:perspective(400px) rotate3d(1,0,0,10deg);opacity:1}80%{-webkit-transform:perspective(400px) rotate3d(1,0,0,-5deg);transform:perspective(400px) rotate3d(1,0,0,-5deg)}to{-webkit-transform:perspective(400px);transform:perspective(400px)}}@-moz-keyframes iziT-fadeOut{from{opacity:1}to{opacity:0}}@-webkit-keyframes iziT-fadeOut{from{opacity:1}to{opacity:0}}@-o-keyframes iziT-fadeOut{from{opacity:1}to{opacity:0}}@keyframes iziT-fadeOut{from{opacity:1}to{opacity:0}}@-moz-keyframes iziT-fadeOutDown{from{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}@-webkit-keyframes iziT-fadeOutDown{from{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}@-o-keyframes iziT-fadeOutDown{from{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}@keyframes iziT-fadeOutDown{from{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}@-moz-keyframes iziT-fadeOutUp{from{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}}@-webkit-keyframes iziT-fadeOutUp{from{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}}@-o-keyframes iziT-fadeOutUp{from{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}}@keyframes iziT-fadeOutUp{from{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}}@-moz-keyframes iziT-fadeOutLeft{from{opacity:1}to{opacity:0;-webkit-transform:translate3d(-200px,0,0);transform:translate3d(-200px,0,0)}}@-webkit-keyframes iziT-fadeOutLeft{from{opacity:1}to{opacity:0;-webkit-transform:translate3d(-200px,0,0);transform:translate3d(-200px,0,0)}}@-o-keyframes iziT-fadeOutLeft{from{opacity:1}to{opacity:0;-webkit-transform:translate3d(-200px,0,0);transform:translate3d(-200px,0,0)}}@keyframes iziT-fadeOutLeft{from{opacity:1}to{opacity:0;-webkit-transform:translate3d(-200px,0,0);transform:translate3d(-200px,0,0)}}@-moz-keyframes iziT-fadeOutRight{from{opacity:1}to{opacity:0;-webkit-transform:translate3d(200px,0,0);transform:translate3d(200px,0,0)}}@-webkit-keyframes iziT-fadeOutRight{from{opacity:1}to{opacity:0;-webkit-transform:translate3d(200px,0,0);transform:translate3d(200px,0,0)}}@-o-keyframes iziT-fadeOutRight{from{opacity:1}to{opacity:0;-webkit-transform:translate3d(200px,0,0);transform:translate3d(200px,0,0)}}@keyframes iziT-fadeOutRight{from{opacity:1}to{opacity:0;-webkit-transform:translate3d(200px,0,0);transform:translate3d(200px,0,0)}}@-moz-keyframes iziT-flipOutX{from{-webkit-transform:perspective(400px);transform:perspective(400px)}30%{-webkit-transform:perspective(400px) rotate3d(1,0,0,-20deg);transform:perspective(400px) rotate3d(1,0,0,-20deg);opacity:1}to{-webkit-transform:perspective(400px) rotate3d(1,0,0,90deg);transform:perspective(400px) rotate3d(1,0,0,90deg);opacity:0}}@-webkit-keyframes iziT-flipOutX{from{-webkit-transform:perspective(400px);transform:perspective(400px)}30%{-webkit-transform:perspective(400px) rotate3d(1,0,0,-20deg);transform:perspective(400px) rotate3d(1,0,0,-20deg);opacity:1}to{-webkit-transform:perspective(400px) rotate3d(1,0,0,90deg);transform:perspective(400px) rotate3d(1,0,0,90deg);opacity:0}}@-o-keyframes iziT-flipOutX{from{-webkit-transform:perspective(400px);transform:perspective(400px)}30%{-webkit-transform:perspective(400px) rotate3d(1,0,0,-20deg);transform:perspective(400px) rotate3d(1,0,0,-20deg);opacity:1}to{-webkit-transform:perspective(400px) rotate3d(1,0,0,90deg);transform:perspective(400px) rotate3d(1,0,0,90deg);opacity:0}}@keyframes iziT-flipOutX{from{-webkit-transform:perspective(400px);transform:perspective(400px)}30%{-webkit-transform:perspective(400px) rotate3d(1,0,0,-20deg);transform:perspective(400px) rotate3d(1,0,0,-20deg);opacity:1}to{-webkit-transform:perspective(400px) rotate3d(1,0,0,90deg);transform:perspective(400px) rotate3d(1,0,0,90deg);opacity:0}} \ No newline at end of file diff --git a/public/static/system/layui/css/modules/code.css b/public/static/system/layui/css/modules/code.css deleted file mode 100644 index a2ff92a..0000000 --- a/public/static/system/layui/css/modules/code.css +++ /dev/null @@ -1 +0,0 @@ -html #layuicss-skincodecss{display:none;position:absolute;width:1989px}.layui-code-view{display:block;position:relative;margin:10px 0;padding:0;border:1px solid #eee;border-left-width:6px;background-color:#fafafa;color:#333;font-family:Courier New;font-size:13px}.layui-code-title{position:relative;padding:0 10px;height:40px;line-height:40px;border-bottom:1px solid #eee;font-size:12px}.layui-code-title>.layui-code-about{position:absolute;right:10px;top:0;color:#b7b7b7}.layui-code-about>a{padding-left:10px}.layui-code-view>.layui-code-ol,.layui-code-view>.layui-code-ul{position:relative;overflow:auto}.layui-code-view>.layui-code-ol>li{position:relative;margin-left:45px;line-height:20px;padding:0 10px;border-left:1px solid #e2e2e2;list-style-type:decimal-leading-zero;*list-style-type:decimal;background-color:#fff}.layui-code-view>.layui-code-ol>li:first-child,.layui-code-view>.layui-code-ul>li:first-child{padding-top:10px}.layui-code-view>.layui-code-ol>li:last-child,.layui-code-view>.layui-code-ul>li:last-child{padding-bottom:10px}.layui-code-view>.layui-code-ul>li{position:relative;line-height:20px;padding:0 10px;list-style-type:none;*list-style-type:none;background-color:#fff}.layui-code-view pre{margin:0}.layui-code-dark{border:1px solid #0c0c0c;border-left-color:#3f3f3f;background-color:#0c0c0c;color:#c2be9e}.layui-code-dark>.layui-code-title{border-bottom:none}.layui-code-dark>.layui-code-ol>li,.layui-code-dark>.layui-code-ul>li{background-color:#3f3f3f;border-left:none}.layui-code-dark>.layui-code-ul>li{margin-left:6px}.layui-code-demo .layui-code{visibility:visible!important;margin:-15px;border-top:none;border-right:none;border-bottom:none}.layui-code-demo .layui-tab-content{padding:15px;border-top:none} \ No newline at end of file diff --git a/public/static/system/layui/css/modules/laydate/default/font.css b/public/static/system/layui/css/modules/laydate/default/font.css deleted file mode 100644 index f429656..0000000 --- a/public/static/system/layui/css/modules/laydate/default/font.css +++ /dev/null @@ -1,16 +0,0 @@ -/** 图标字体 **/ -@font-face {font-family: 'laydate-icon'; - src: url('./font/iconfont.eot'); - src: url('./font/iconfont.eot#iefix') format('embedded-opentype'), - url('./font/iconfont.svg#iconfont') format('svg'), - url('./font/iconfont.woff') format('woff'), - url('./font/iconfont.ttf') format('truetype'); -} - -.laydate-icon{ - font-family:"laydate-icon" !important; - font-size: 16px; - font-style: normal; - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; -} \ No newline at end of file diff --git a/public/static/system/layui/css/modules/laydate/default/laydate.css b/public/static/system/layui/css/modules/laydate/default/laydate.css deleted file mode 100644 index 549ccb8..0000000 --- a/public/static/system/layui/css/modules/laydate/default/laydate.css +++ /dev/null @@ -1 +0,0 @@ -html #layuicss-laydate{display:none;position:absolute;width:1989px}.layui-laydate *{margin:0;padding:0}.layui-laydate,.layui-laydate *{box-sizing:border-box}.layui-laydate{position:absolute;z-index:66666666;margin:5px 0;border-radius:2px;font-size:14px;-webkit-animation-duration:.2s;animation-duration:.2s;-webkit-animation-fill-mode:both;animation-fill-mode:both}.layui-laydate-main{width:272px}.layui-laydate-content td,.layui-laydate-header *,.layui-laydate-list li{transition-duration:.3s;-webkit-transition-duration:.3s}@keyframes laydate-downbit{0%{opacity:.3;transform:translate3d(0,-5px,0)}100%{opacity:1;transform:translate3d(0,0,0)}}.layui-laydate{animation-name:laydate-downbit}.layui-laydate-static{position:relative;z-index:0;display:inline-block;margin:0;-webkit-animation:none;animation:none}.laydate-ym-show .laydate-next-m,.laydate-ym-show .laydate-prev-m{display:none!important}.laydate-ym-show .laydate-next-y,.laydate-ym-show .laydate-prev-y{display:inline-block!important}.laydate-ym-show .laydate-set-ym span[lay-type=month]{display:none!important}.laydate-time-show .laydate-set-ym span[lay-type=month],.laydate-time-show .laydate-set-ym span[lay-type=year],.laydate-time-show .layui-laydate-header .layui-icon{display:none!important}.layui-laydate-header{position:relative;line-height:30px;padding:10px 70px 5px}.layui-laydate-header *{display:inline-block;vertical-align:bottom}.layui-laydate-header i{position:absolute;top:10px;padding:0 5px;color:#999;font-size:18px;cursor:pointer}.layui-laydate-header i.laydate-prev-y{left:15px}.layui-laydate-header i.laydate-prev-m{left:45px}.layui-laydate-header i.laydate-next-y{right:15px}.layui-laydate-header i.laydate-next-m{right:45px}.laydate-set-ym{width:100%;text-align:center;box-sizing:border-box;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.laydate-set-ym span{padding:0 10px;cursor:pointer}.laydate-time-text{cursor:default!important}.layui-laydate-content{position:relative;padding:10px;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.layui-laydate-content table{border-collapse:collapse;border-spacing:0}.layui-laydate-content td,.layui-laydate-content th{width:36px;height:30px;padding:5px;text-align:center}.layui-laydate-content th{font-weight:400}.layui-laydate-content td{position:relative;cursor:pointer}.laydate-day-mark{position:absolute;left:0;top:0;width:100%;line-height:30px;font-size:12px;overflow:hidden}.laydate-day-mark::after{position:absolute;content:'';right:2px;top:2px;width:5px;height:5px;border-radius:50%}.laydate-day-holidays:before{position:absolute;left:0;top:0;font-size:12px;transform:scale(.7)}.laydate-day-holidays:before{content:'\4F11';color:#ff5722}.laydate-day-holidays[type=work]:before{content:'\73ED';color:inherit}.layui-laydate .layui-this .laydate-day-holidays:before{color:#fff}.layui-laydate-footer{position:relative;height:46px;line-height:26px;padding:10px}.layui-laydate-footer span{display:inline-block;vertical-align:top;height:26px;line-height:24px;padding:0 10px;border:1px solid #c9c9c9;border-radius:2px;background-color:#fff;font-size:12px;cursor:pointer;white-space:nowrap;transition:all .3s}.layui-laydate-footer span:hover{color:#5fb878}.layui-laydate-footer span.layui-laydate-preview{cursor:default;border-color:transparent!important}.layui-laydate-footer span.layui-laydate-preview:hover{color:#666}.layui-laydate-footer span:first-child.layui-laydate-preview{padding-left:0}.laydate-footer-btns{position:absolute;right:10px;top:10px}.laydate-footer-btns span{margin:0 0 0 -1px}.layui-laydate-list{position:absolute;left:0;top:0;width:100%;height:100%;padding:10px;box-sizing:border-box;background-color:#fff}.layui-laydate-list>li{position:relative;display:inline-block;width:33.3%;height:36px;line-height:36px;margin:3px 0;vertical-align:middle;text-align:center;cursor:pointer}.laydate-month-list>li{width:25%;margin:17px 0}.laydate-time-list>li{height:100%;margin:0;line-height:normal;cursor:default}.laydate-time-list p{position:relative;top:-4px;line-height:29px}.laydate-time-list ol{height:181px;overflow:hidden}.laydate-time-list>li:hover ol{overflow-y:auto}.laydate-time-list ol li{width:130%;padding-left:33px;height:30px;line-height:30px;text-align:left;cursor:pointer}.layui-laydate-hint{position:absolute;top:115px;left:50%;width:250px;margin-left:-125px;line-height:20px;padding:15px;text-align:center;font-size:12px;color:#ff5722}.layui-laydate-range{width:546px}.layui-laydate-range .layui-laydate-main{display:inline-block;vertical-align:middle}.layui-laydate-range .laydate-main-list-1 .layui-laydate-content,.layui-laydate-range .laydate-main-list-1 .layui-laydate-header{border-left:1px solid #e2e2e2}.layui-laydate,.layui-laydate-hint{border:1px solid #d2d2d2;box-shadow:0 2px 4px rgba(0,0,0,.12);background-color:#fff;color:#666}.layui-laydate-header{border-bottom:1px solid #e2e2e2}.layui-laydate-header i:hover,.layui-laydate-header span:hover{color:#5fb878}.layui-laydate-content{border-top:none 0;border-bottom:none 0}.layui-laydate-content th{color:#333}.layui-laydate-content td{color:#666}.layui-laydate-content td.laydate-selected{background-color:#b5fff8}.laydate-selected:hover{background-color:#00f7de!important}.layui-laydate-content td:hover,.layui-laydate-list li:hover{background-color:#eee;color:#333}.laydate-time-list li ol{margin:0;padding:0;border:1px solid #e2e2e2;border-left-width:0}.laydate-time-list li:first-child ol{border-left-width:1px}.laydate-time-list>li:hover{background:0 0}.layui-laydate-content .laydate-day-next,.layui-laydate-content .laydate-day-prev{color:#d2d2d2}.laydate-selected.laydate-day-next,.laydate-selected.laydate-day-prev{background-color:#f8f8f8!important}.layui-laydate-footer{border-top:1px solid #e2e2e2}.layui-laydate-hint{color:#ff5722}.laydate-day-mark::after{background-color:#5fb878}.layui-laydate-content td.layui-this .laydate-day-mark::after{display:none}.layui-laydate-footer span[lay-type=date]{color:#5fb878}.layui-laydate .layui-this{background-color:#009688!important;color:#fff!important}.layui-laydate .laydate-disabled,.layui-laydate .laydate-disabled:hover{background:0 0!important;color:#d2d2d2!important;cursor:not-allowed!important;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.laydate-theme-molv{border:none}.laydate-theme-molv.layui-laydate-range{width:548px}.laydate-theme-molv .layui-laydate-main{width:274px}.laydate-theme-molv .layui-laydate-header{border:none;background-color:#009688}.laydate-theme-molv .layui-laydate-header i,.laydate-theme-molv .layui-laydate-header span{color:#f6f6f6}.laydate-theme-molv .layui-laydate-header i:hover,.laydate-theme-molv .layui-laydate-header span:hover{color:#fff}.laydate-theme-molv .layui-laydate-content{border:1px solid #e2e2e2;border-top:none;border-bottom:none}.laydate-theme-molv .laydate-main-list-1 .layui-laydate-content{border-left:none}.laydate-theme-molv .layui-laydate-footer{border:1px solid #e2e2e2}.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 #e2e2e2}.laydate-theme-grid .laydate-selected,.laydate-theme-grid .laydate-selected:hover{background-color:#f2f2f2!important;color:#009688!important}.laydate-theme-grid .laydate-selected.laydate-day-next,.laydate-theme-grid .laydate-selected.laydate-day-prev{color:#d2d2d2!important}.laydate-theme-grid .laydate-month-list,.laydate-theme-grid .laydate-year-list{margin:1px 0 0 1px}.laydate-theme-grid .laydate-month-list>li,.laydate-theme-grid .laydate-year-list>li{margin:0 -1px -1px 0}.laydate-theme-grid .laydate-year-list>li{height:43px;line-height:43px}.laydate-theme-grid .laydate-month-list>li{height:71px;line-height:71px} \ No newline at end of file diff --git a/public/static/system/layui/css/modules/layer/default/icon-ext.png b/public/static/system/layui/css/modules/layer/default/icon-ext.png deleted file mode 100644 index bbbb669bb311514baa5db3a6a00b4644d0e280f1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5911 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.iziToast-progressbar{position:absolute;left:0;bottom:0;width:100%;z-index:1;background:rgba(255,255,255,.5)}.iziToast>.iziToast-progressbar>div{height:2px;width:100%;background:#ddd;border-radius:0 0 3px 3px}.iziToast.iziToast-theme-dark>.iziToast-progressbar>div{background:#fff}.iziToast.iziToast-balloon:before{content:'';position:absolute;right:8px;left:auto;width:0;height:0;top:100%;border-right:0 solid transparent;border-left:15px solid transparent;border-top:10px solid #000;border-top-color:inherit;border-radius:0}.iziToast.iziToast-balloon .iziToast-progressbar{top:0;bottom:auto}.iziToast.iziToast-balloon>div{border-radius:0 0 0 3px}.iziToast>.iziToast-cover{position:absolute;left:0;top:0;bottom:0;height:100%;margin:0;background-size:100%;background-position:50% 50%;background-repeat:no-repeat}.iziToast>.iziToast-close{position:absolute;right:0;top:0;border:0;padding:0;opacity:.6;width:42px;height:100%;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAJPAAACTwBcGfW0QAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAD3SURBVFiF1ZdtDoMgDEBfdi4PwAX8vLFn0qT7wxantojKupmQmCi8R4tSACpgjC2ICCUbEBa8ingjsU1AXRBeR8aLN64FiknswN8CYefBBDQ3whuFESy7WyQMeC0ipEI0A+0FeBvHUFN8xPaUhAH/iKoWsnXHGegy4J0yxialOfaHJAz4bhRzQzgDvdGnz4GbAonZbCQMuBm1K/kcFu8Mp1N2cFFpsxsMuJqqbIGExGl4loARajU1twskJLLhIsID7+tvUoDnIjTg5T9DPH9EBrz8rxjPzciAl9+O8SxI8CzJ8CxKFfh3ynK8Dyb8wNHM/XDqejx/AtNyPO87tNybAAAAAElFTkSuQmCC) 50% 50% no-repeat;background-size:8px;cursor:pointer;outline:0}.iziToast>.iziToast-close:hover{opacity:1}.iziToast>.iziToast-body{position:relative;padding:0 0 0 10px;height:auto;min-height:28px;margin:0 0 0 15px;text-align:left}.iziToast>.iziToast-body:after{content:"";display:table;clear:both}.iziToast>.iziToast-body .iziToast-texts{margin:6px 0;padding-right:2px;display:inline-block;float:left}.iziToast>.iziToast-body .iziToast-inputs{min-height:19px;float:left;margin:3px -2px}.iziToast>.iziToast-body .iziToast-inputs>input:not([type=checkbox]):not([type=radio]),.iziToast>.iziToast-body .iziToast-inputs>select{position:relative;display:inline-block;margin:2px;border-radius:2px;border:0;padding:4px 7px;font-size:13px;letter-spacing:.02em;background:rgba(0,0,0,.1);color:#000;box-shadow:0 0 0 1px rgba(0,0,0,.2);min-height:26px}.iziToast>.iziToast-body .iziToast-inputs>input:not([type=checkbox]):not([type=radio]):focus,.iziToast>.iziToast-body .iziToast-inputs>select:focus{box-shadow:0 0 0 1px rgba(0,0,0,.6)}.iziToast>.iziToast-body .iziToast-buttons{min-height:17px;float:left;margin:4px 0 0}.iziToast>.iziToast-body .iziToast-buttons>a,.iziToast>.iziToast-body .iziToast-buttons>button,.iziToast>.iziToast-body .iziToast-buttons>input:not([type=checkbox]):not([type=radio]){position:relative;display:inline-block;margin:2px;border-radius:2px;border:0;padding:5px 10px;font-size:12px;letter-spacing:.02em;cursor:pointer;background:rgba(0,0,0,.1);color:#555}.iziToast>.iziToast-body .iziToast-buttons>a:hover,.iziToast>.iziToast-body .iziToast-buttons>button:hover,.iziToast>.iziToast-body .iziToast-buttons>input:not([type=checkbox]):not([type=radio]):hover{background:rgba(0,0,0,.15)}.iziToast>.iziToast-body .iziToast-buttons>a:focus,.iziToast>.iziToast-body .iziToast-buttons>button:focus,.iziToast>.iziToast-body .iziToast-buttons>input:not([type=checkbox]):not([type=radio]):focus{box-shadow:0 0 0 1px rgba(0,0,0,.6)}.iziToast>.iziToast-body .iziToast-buttons>a:active,.iziToast>.iziToast-body .iziToast-buttons>button:active,.iziToast>.iziToast-body .iziToast-buttons>input:not([type=checkbox]):not([type=radio]):active{top:1px}.iziToast>.iziToast-body .iziToast-icon{position:absolute;left:0;top:50%;display:table;font-size:23px;line-height:24px;margin-top:-11px;color:#000;width:24px;height:24px}.iziToast>.iziToast-body .iziToast-message,.iziToast>.iziToast-body .iziToast-title{padding:0;font-size:14px;line-height:16px;white-space:normal;float:left;text-align:left}.iziToast>.iziToast-body .iziToast-icon.ico-info{background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNTU1NzcxMTk5MzYwIiBjbGFzcz0iaWNvbiIgc3R5bGU9IiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjEwODAzIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgd2lkdGg9IjIwMCIgaGVpZ2h0PSIyMDAiPjxkZWZzPjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+PC9zdHlsZT48L2RlZnM+PHBhdGggZD0iTTUxMiAyOC40MTZjLTI2Ny40Njg4IDAtNDg0LjI0OTYgMjE2LjgzMi00ODQuMjQ5NiA0ODQuMjQ5NiAwIDI2Ny40MTc2IDIxNi44MzIgNDg0LjI0OTYgNDg0LjI0OTYgNDg0LjI0OTYgMjY3LjQxNzYgMCA0ODQuMzAwOC0yMTYuODMyIDQ4NC4zMDA4LTQ4NC4yNDk2Qzk5Ni4zMDA4IDI0NS4yNDggNzc5LjQxNzYgMjguNDE2IDUxMiAyOC40MTZ6TTQ1NS41MjY0IDI0NS4wOTQ0QzQ3MC4zMjMyIDIyOS44ODggNDkwLjcwMDggMjIxLjMzNzYgNTExLjc5NTIgMjIxLjY0NDhjMjEuMTk2OC0wLjIwNDggNDEuNzc5MiA4LjI0MzIgNTYuNTI0OCAyMy40NDk2IDE1LjAwMTYgMTQuNzk2OCAyMy4yOTYgMzUuMTIzMiAyMy4wOTEyIDU2LjExNTIgMC4yMDQ4IDIxLjE5NjgtOC4yOTQ0IDQxLjU3NDQtMjMuMzk4NCA1Ni4yMTc2LTE0LjY5NDQgMTQuNjk0NC0zNC43MTM2IDIzLjA0LTU1LjM5ODQgMjMuMDRMNTExLjc5NTIgMzgwLjQ2NzJjLTIwLjk5MiAwLjIwNDgtNDEuMzY5Ni04LjE0MDgtNTYuMDY0LTIzLjE0MjRDNDQwLjY3ODQgMzQyLjY4MTYgNDMyLjMzMjggMzIyLjMwNCA0MzIuNTM3NiAzMDEuMjA5NiA0MzIuMzMyOCAyODAuMjE3NiA0NDAuNjc4NCAyNTkuODkxMiA0NTUuNTI2NCAyNDUuMDk0NHpNNjI3LjYwOTYgNzY4LjE1MzZsMCAxMy40MTQ0IDAgMjIuMjIwOEwzOTYuMjg4IDgwMy43ODg4bDAtNTcuMTM5MiAyMS42MDY0LTAuNzY4YzEwLjI0LTAuNDYwOCAxNC41OTItMi43MTM2IDE2Ljk5ODQtNC43NjE2bDEuMjI4OC01LjQyNzJjMC45NzI4LTUuNTgwOCAxLjYzODQtMTQuNDM4NCAxLjU4NzItMjUuOTA3Mkw0MzcuNzA4OCA1MDcuOTA0YzAuMjU2LTE3Ljc2NjQtMi4zNTUyLTI5LjkwMDgtMy40ODE2LTMyLjU2MzJsMCAwTDQzMS42MTYgNDc0LjA2MDhDNDI4Ljg1MTIgNDczLjA4OCA0MjMuOTM2IDQ3Mi4wNjQgNDE3LjE3NzYgNDcxLjY1NDRMMzk2LjI4OCA0NzAuMzc0NCAzOTYuMjg4IDQxMy40OTEybDE4OS40OTEyIDAgMCAyOTYuMjk0NGMtMC4zMDcyIDE3LjcxNTIgMi40MDY0IDI5Ljc5ODQgMy40MzA0IDMyLjU2MzJsMC4wNTEyIDAgMi43MTM2IDEuMTc3NmMyLjgxNiAwLjk3MjggNy43ODI0IDEuOTk2OCAxNC42OTQ0IDIuMzU1MmwyMC44ODk2IDEuMjhMNjI3LjU1ODQgNzY4LjE1MzZ6IiBwLWlkPSIxMDgwNCIgZmlsbD0iIzQwOUVGRiI+PC9wYXRoPjwvc3ZnPg==) 50% 50% no-repeat;background-size:85%}.iziToast>.iziToast-body .iziToast-icon.ico-warning{background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNTU1NzcwODczNzUzIiBjbGFzcz0iaWNvbiIgc3R5bGU9IiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjUxMTgiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PGRlZnM+PHN0eWxlIHR5cGU9InRleHQvY3NzIj48L3N0eWxlPjwvZGVmcz48cGF0aCBkPSJNNTEyLjAyMzI3MyAxMDI0Qzc5NC43NjM2MzYgMTAyNCAxMDI0IDc5NC43ODY5MDkgMTAyNCA1MTEuOTc2NzI3IDEwMjQgMjI5LjIzNjM2NCA3OTQuNzg2OTA5LTAuMDIzMjczIDUxMi4wMjMyNzMtMC4wMjMyNzNTMCAyMjkuMjEzMDkxIDAgNTExLjk3NjcyN0MwIDc5NC43ODY5MDkgMjI5LjIzNjM2NCAxMDI0IDUxMi4wMjMyNzMgMTAyNE00NjkuMzQxMDkxIDc2OGMwLTIzLjU1MiAxOC45MjA3MjctNDIuNjU4OTA5IDQyLjcwNTQ1NS00Mi42NTg5MDkgMjMuNTUyIDAgNDIuNjU4OTA5IDE4LjkyMDcyNyA0Mi42NTg5MDkgNDIuNjU4OTA5IDAgMjMuNTc1MjczLTE4LjkyMDcyNyA0Mi43MDU0NTUtNDIuNjU4OTA5IDQyLjcwNTQ1NUM0ODguNDcxMjczIDgxMC43MDU0NTUgNDY5LjM0MTA5MSA3OTEuNzM4MTgyIDQ2OS4zNDEwOTEgNzY4TTQ2OS4zNDEwOTEgMjU1LjgxMzgxOGMwLTIzLjQ1ODkwOSAxOC45MjA3MjctNDIuNDcyNzI3IDQyLjcwNTQ1NS00Mi40NzI3MjcgMjMuNTUyIDAgNDIuNjU4OTA5IDE5LjQzMjcyNyA0Mi42NTg5MDkgNDIuNDcyNzI3bDAgMzQxLjczNjcyN2MwIDIzLjQ1ODkwOS0xOC45MjA3MjcgNDIuNDcyNzI3LTQyLjY1ODkwOSA0Mi40NzI3MjctMjMuNTc1MjczIDAtNDIuNzA1NDU1LTE5LjQzMjcyNy00Mi43MDU0NTUtNDIuNDcyNzI3TDQ2OS4zNDEwOTEgMjU1LjgxMzgxOHoiIHAtaWQ9IjUxMTkiIGZpbGw9IiNmZjk5MDAiPjwvcGF0aD48L3N2Zz4=) 50% 50% no-repeat;background-size:85%}.iziToast>.iziToast-body .iziToast-icon.ico-error{background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNTU1NzcwNDI1NDkwIiBjbGFzcz0iaWNvbiIgc3R5bGU9IiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjEyNjUiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PGRlZnM+PHN0eWxlIHR5cGU9InRleHQvY3NzIj48L3N0eWxlPjwvZGVmcz48cGF0aCBkPSJNNTExLjk5NjQxOCAyMy41MjA2OTNjLTI2OS43NjcwNSAwLTQ4OC40NTQ3NDggMjE4LjY4ODcyMS00ODguNDU0NzQ4IDQ4OC40NTQ3NDggMCAyNjkuNzY4MDczIDIxOC42ODg3MjEgNDg4LjQ1MzcyNCA0ODguNDU0NzQ4IDQ4OC40NTM3MjQgMjY5Ljc2NjAyNyAwIDQ4OC40NTQ3NDgtMjE4LjY4NTY1MSA0ODguNDU0NzQ4LTQ4OC40NTM3MjRDMTAwMC40NTExNjYgMjQyLjIwOTQxNCA3ODEuNzYyNDQ1IDIzLjUyMDY5MyA1MTEuOTk2NDE4IDIzLjUyMDY5M3pNNzY5LjMzNDM5MSA3MTUuMTU1OTU2bC01NC4xNTY0MzQgNTQuMTU2NDM0TDUxMS45OTY0MTggNTY2LjEyOTgyOCAzMDguODEzODU2IDc2OS4zMTIzOWwtNTQuMTU1NDExLTU0LjE1NjQzNEw0NTcuODQxMDA4IDUxMS45NzU0NDEgMjU0LjY1ODQ0NiAzMDguNzkyODc4bDU0LjE1NTQxMS01NC4xNTU0MTFMNTExLjk5NjQxOCA0NTcuODIwMDNsMjAzLjE4MjU2Mi0yMDMuMTgyNTYyIDU0LjE1NjQzNCA1NC4xNTU0MTFMNTY2LjE1MTgyOSA1MTEuOTc1NDQxIDc2OS4zMzQzOTEgNzE1LjE1NTk1NnoiIHAtaWQ9IjEyNjYiIGZpbGw9IiNGNTZDNkMiPjwvcGF0aD48L3N2Zz4=) 50% 50% no-repeat;background-size:80%}.iziToast>.iziToast-body .iziToast-icon.ico-success{background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNTU1NzcwNTI2MjA3IiBjbGFzcz0iaWNvbiIgc3R5bGU9IiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjQ5NjUiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PGRlZnM+PHN0eWxlIHR5cGU9InRleHQvY3NzIj48L3N0eWxlPjwvZGVmcz48cGF0aCBkPSJNMTAyNCA1MTEuOTk5NTAyYzAgMjgyLjc3MDU1Ny0yMjkuMjI5OTQxIDUxMi4wMDA0OTgtNTExLjk5OTUwMiA1MTIuMDAwNDk4LTI4Mi43Njk1NjEgMC01MTIuMDAwNDk4LTIyOS4yMjk5NDEtNTEyLjAwMDQ5OC01MTIuMDAwNDk4IDAtMjgyLjc2ODU2NiAyMjkuMjMwOTM2LTUxMS45OTk1MDIgNTEyLjAwMDQ5OC01MTEuOTk5NTAyQzc5NC43NjkwNjQgMCAxMDI0IDIyOS4yMzA5MzYgMTAyNCA1MTEuOTk5NTAyek03OTYuNTc3MDgxIDM3OC4zMTc3MTNsLTQ4LjQ1OTA1MS00OC40NTkwNTEtMjk3LjA3ODM4NyAyOTcuMDc3MzkyTDI3Ny4yNjc4NTIgNDUzLjE2NTI1OGwtNDguNDU4MDU2IDQ4LjQ1ODA1NiAyMjIuMjI4ODUxIDIyMi4yMzA4NDJMNzk2LjU3NzA4MSAzNzguMzE3NzEzeiIgcC1pZD0iNDk2NiIgZmlsbD0iIzY3YzIzYSI+PC9wYXRoPjwvc3ZnPg==) 50% 50% no-repeat;background-size:85%}.iziToast>.iziToast-body .iziToast-icon.ico-question{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAQAAAAAYLlVAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAAmJLR0QAAKqNIzIAAAAJcEhZcwAADdcAAA3XAUIom3gAAAAHdElNRQfhCQkUEhFovxTxAAAEDklEQVRo3s2ZTWgTQRTHf03ipTRUqghNSgsRjHgQrFUQC6JgD1Kak3gQUUoPqRdBglf1oBehBws9Cn4cGk+1SOmh2upBxAYVoeJHrR9tgq0i1Cq0lqYeks7MbpPdmU00/c8hm9n33v/t7Nt5M2+qMEWQI0QIibZKRrQpHvLL2KI2wnQzzBKrDm2RIeKEy01dTYKUI7G1ZRknQXV5yP10kTYgly1NF/5S6duZ8ES+1iZodyaocrjXxE0OFeifYYgp0mRIkwFChAkRJsIxGgrIP+I0n82fvZW5dc/zkss0O2o1c5mX6/TmaDWl77RFe5YkUW3tKEmyFv0lOvXJ/fTYnmCEFuMRbGHEZqVHLyT9DFjUJmkzJl9DG5MWWwM6Llif/gF1nukB6nhgGwUXdFrE+wiURA8QoM9i0zEWWpXQW+ZsyeRrOMuyEo5Fv4gmy4dXPvqcC+pH2VRYaMwy+OWG+iLGCgm0W0Kv9HdvR8ASjmKCXpuK/bxiV/76A/v5UdDIZuKcJGjrnec5KZ7wwsWFOp6xPX/9mt2sqDe7FO+Kf/fXHBPPDWpdXGhTpLvUG9VKwh1xMDDjkvu+cNDFBTk7ptX1QkKZ850m3duu6fcrWxwdaFFyREJ2j4vOpKP6Du6z4uJCv8sYJIVkCnJBGGZaBONO3roY2EqNrSfIPi7SKP4fdXyNUd6I6wbSAHEl33tFLe+FlSsusnK90A0+oEPcuufZgXnOi+u9LrKSJQZQw6LwqBnv2CKsfHORbFbyQhA6xN/pEuihSdj56Co7LWRjPiKie6gkB2LiKuUqK5kiPkLiz1QJ9K1cNXBAMoUCigNpQ9IqDtMI1HKA4/jyvUsaoSyZLA5kjOjDPFZen8Ql5TsvBskUgjciIPSX3QAXC86DT7VWvlEh/xZ+ij9BDVWJ0QL0SbZq6QaFxoLPcXPmBLveLCc4wXdDK6s+6/vwhCSniFLPXW0NJe5UB8zKCsviqpc7vGPVQFcyZbyPwGD+d5ZnxmNWlhG4xSBZZjivjIWHEQgoDkSMjMwTo54569JSE5IpA7EyJSMTyGTUAUFlO1ZKOtaHTMeL1PhYYFTcihmY2cQ5+ullj7EDkiVfVez2sCTz8yiv84djhg7IJVk81xFWJlPdfHBG0flkRC/zQFZ+DSllNtfDdUsOMCliyGX5uOzU3ZhIXFDof4m1gDuKbEx0t2YS25gVGpcMnr/I1kx3c6piB8P8ZoqEwfMX3ZyCXynJTmq/U7NUXqfUzCbWL1wqVKBQUeESzQYoUlW8TAcVL1RCxUu1G6BYXfFyfQ4VPbDI4T8d2WzgQ6sc/vmxnTsqfHCZQzUJxm1h5dxS5Tu6lQgTZ0ipqRVqSwzTbbLHMt+c19iO76tsx/cLZub+Ali+tYC93olEAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDE3LTA5LTA5VDIwOjE4OjE3KzAyOjAwjKtfjgAAACV0RVh0ZGF0ZTptb2RpZnkAMjAxNy0wOS0wOVQyMDoxODoxNyswMjowMP325zIAAAAZdEVYdFNvZnR3YXJlAHd3dy5pbmtzY2FwZS5vcmeb7jwaAAAAAElFTkSuQmCC) 50% 50% no-repeat;background-size:85%}.iziToast>.iziToast-body .iziToast-icon.ico-load{background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNTQ1NTUyMzAyOTE3IiBjbGFzcz0iaWNvbiIgc3R5bGU9IiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjQyNDAiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PGRlZnM+PHN0eWxlIHR5cGU9InRleHQvY3NzIj48L3N0eWxlPjwvZGVmcz48cGF0aCBkPSJNNTEyIDY0YzI0Ny4yIDAgNDQ4IDIwMC44IDQ0OCA0NDhoLTY0YzAtMjEyLTE3Mi0zODQtMzg0LTM4NFY2NHogbTAgODMyYy0yMTIgMC0zODQtMTcyLTM4NC0zODRINjRjMCAyNDcuMiAyMDAuOCA0NDggNDQ4IDQ0OHYtNjR6IiBwLWlkPSI0MjQxIiBmaWxsPSIjMUU5RkZGIj48L3BhdGg+PC9zdmc+) 50% 50% no-repeat;background-size:85%;animation:rotating 1.2s linear infinite}@keyframes rotating{from{transform:rotate(0)}to{transform:rotate(360deg)}}.iziToast>.iziToast-body .iziToast-title{margin:0 0 10px;color:#303133}.iziToast>.iziToast-body .iziToast-message{margin:0;color:#606266}.iziToast.iziToast-animateInside .iziToast-buttons-child,.iziToast.iziToast-animateInside .iziToast-icon,.iziToast.iziToast-animateInside .iziToast-inputs-child,.iziToast.iziToast-animateInside .iziToast-message,.iziToast.iziToast-animateInside .iziToast-title{opacity:0}.iziToast-target{position:relative;width:100%;margin:0 auto}.iziToast-target .iziToast-capsule{overflow:hidden}.iziToast-target .iziToast-capsule:after{visibility:hidden;display:block;font-size:0;content:" ";clear:both;height:0}.iziToast-target .iziToast-capsule .iziToast{width:100%;float:left}.iziToast-wrapper{z-index:19891101;position:fixed;width:100%;pointer-events:none;display:flex;flex-direction:column}.iziToast-wrapper .iziToast.iziToast-balloon:before{border-right:0 solid transparent;border-left:15px solid transparent;border-top:10px solid #000;border-top-color:inherit;right:8px;left:auto}.iziToast-wrapper-bottomLeft{left:0;bottom:0;text-align:left}.iziToast-wrapper-bottomLeft .iziToast.iziToast-balloon:before{border-right:15px solid transparent;border-left:0 solid transparent;right:auto;left:8px}.iziToast-wrapper-bottomRight{right:0;bottom:0;text-align:right}.iziToast-wrapper-topLeft{left:0;top:0;text-align:left}.iziToast-wrapper-topLeft .iziToast.iziToast-balloon:before{border-right:15px solid transparent;border-left:0 solid transparent;right:auto;left:8px}.iziToast-wrapper-topRight{top:0;right:0;text-align:right}.iziToast-wrapper-topCenter{top:0;left:0;right:0;text-align:center}.iziToast-wrapper-bottomCenter{bottom:0;left:0;right:0;text-align:center}.iziToast-wrapper-center{top:0;bottom:0;left:0;right:0;text-align:center;justify-content:center;flex-flow:column;align-items:center}.iziToast-rtl{direction:rtl;padding:8px 0 9px 45px;font-family:Tahoma,Lato,Arial}.iziToast-rtl .iziToast-cover{left:auto;right:0}.iziToast-rtl .iziToast-close{right:auto;left:0}.iziToast-rtl .iziToast-body{padding:0 10px 0 0;margin:0 16px 0 0;text-align:right}.iziToast-rtl .iziToast-body .iziToast-buttons,.iziToast-rtl .iziToast-body .iziToast-inputs,.iziToast-rtl .iziToast-body .iziToast-message,.iziToast-rtl .iziToast-body .iziToast-texts,.iziToast-rtl .iziToast-body .iziToast-title{float:right;text-align:right}.iziToast-rtl .iziToast-body .iziToast-icon{left:auto;right:0}@media only screen and (min-width:568px){.iziToast-wrapper{padding:10px 15px}.iziToast{width:auto}.iziToast:not(.iziToast-rtl) .iziToast-cover{border-radius:3px 0 0 3px}.iziToast.iziToast-rtl .iziToast-cover{border-radius:0 3px 3px 0}.iziToast.iziToast-color-dark:after{box-shadow:inset 0 -10px 20px -10px rgba(255,255,255,.3),0 10px 10px -5px rgba(0,0,0,.25)}.iziToast.iziToast-balloon .iziToast-progressbar{background:0 0}.iziToast.iziToast-balloon:after{box-shadow:0 10px 10px -5px rgba(0,0,0,.25),inset 0 10px 20px -5px rgba(0,0,0,.25)}.iziToast-target .iziToast:after{box-shadow:inset 0 -10px 20px -10px rgba(0,0,0,.2),inset 0 0 5px rgba(0,0,0,.1)}}.iziToast.iziToast-theme-dark{background:#565c70;border-color:#565c70}.iziToast.iziToast-theme-dark .iziToast-title{color:#fff}.iziToast.iziToast-theme-dark .iziToast-message{color:rgba(255,255,255,.9);font-weight:300}.iziToast.iziToast-theme-dark .iziToast-close{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAQAAADZc7J/AAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAAmJLR0QAAKqNIzIAAAAJcEhZcwAADdcAAA3XAUIom3gAAAAHdElNRQfgCR4OIQIPSao6AAAAwElEQVRIx72VUQ6EIAwFmz2XB+AConhjzqTJ7JeGKhLYlyx/BGdoBVpjIpMJNjgIZDKTkQHYmYfwmR2AfAqGFBcO2QjXZCd24bEggvd1KBx+xlwoDpYmvnBUUy68DYXD77ESr8WDtYqvxRex7a8oHP4Wo1Mkt5I68Mc+qYqv1h5OsZmZsQ3gj/02h6cO/KEYx29hu3R+VTTwz6D3TymIP1E8RvEiiVdZfEzicxYLiljSxKIqlnW5seitTW6uYnv/Aqh4whX3mEUrAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDE2LTA5LTMwVDE0OjMzOjAyKzAyOjAwl6RMVgAAACV0RVh0ZGF0ZTptb2RpZnkAMjAxNi0wOS0zMFQxNDozMzowMiswMjowMOb59OoAAAAZdEVYdFNvZnR3YXJlAHd3dy5pbmtzY2FwZS5vcmeb7jwaAAAAAElFTkSuQmCC) 50% 50% no-repeat;background-size:8px}.iziToast.iziToast-theme-dark .iziToast-icon{color:#fff}.iziToast.iziToast-theme-dark .iziToast-icon.ico-info{background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNTQxNjQ5NjA1MTc2IiBjbGFzcz0iaWNvbiIgc3R5bGU9IiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjM1MzIiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMTI4IiBoZWlnaHQ9IjEyOCI+PGRlZnM+PHN0eWxlIHR5cGU9InRleHQvY3NzIj48L3N0eWxlPjwvZGVmcz48cGF0aCBkPSJNODUxLjE3MTU1NiA3MTcuOTM3Nzc4YzMuMjQyNjY3IDExLjk0NjY2NyAyLjg0NDQ0NCAyNC40NjIyMjItMS40MjIyMjMgMzYuNDA4ODg5YTYyLjkxOTExMSA2Mi45MTkxMTEgMCAwIDEtMjEuOTU5MTExIDI5LjUyNTMzMyA2NS4yNTE1NTYgNjUuMjUxNTU2IDAgMCAxLTM4LjkxMiAxMi41MTU1NTZIMTc4LjExOTExMWE2NC44NTMzMzMgNjQuODUzMzMzIDAgMCAxLTM4Ljc5ODIyMi0xMi41NzI0NDUgNjIuMjM2NDQ0IDYyLjIzNjQ0NCAwIDAgMS0yMi4wMTYtMjkuNTI1MzMzIDYwLjY0MzU1NiA2MC42NDM1NTYgMCAwIDEtMS4zNjUzMzMtMzYuNDA4ODg5YzMuNTg0LTEzLjE0MTMzMyAxMS40MzQ2NjctMjQuNTc2IDIyLjY5ODY2Ni0zMy4xMDkzMzNsNTguNDgxNzc4LTQ0LjAzMmE0MC43MzI0NDQgNDAuNzMyNDQ0IDAgMCAwIDE2LjQ5Nzc3OC0zMi43MTExMTJ2LTIwMy4wOTMzMzNjMC0zNS4yMTQyMjIgNy4xNjgtNjkuNTE4MjIyIDIxLjIxOTU1NS0xMDEuNzE3MzMzIDEzLjY1MzMzMy0zMS4xNzUxMTEgMzMuMTA5MzMzLTU5LjE2NDQ0NCA1Ny44NTYtODMuMTE0NjY3QTI2OC44NTY4ODkgMjY4Ljg1Njg4OSAwIDAgMSA0MTQuNzIgMTUyLjA2NHYtMjguNTAxMzMzQzQxNC43MiA4Ni44MTI0NDQgNDQ1LjYxMDY2NyA1Ni44ODg4ODkgNDgzLjU1NTU1NiA1Ni44ODg4ODljMzcuOTQ0ODg5IDAgNjguODM1NTU2IDI5LjkyMzU1NiA2OC44MzU1NTUgNjYuNjczNzc4djI4LjUwMTMzM2MxMi4zNDQ4ODkgMy4xODU3NzggMjQuNDYyMjIyIDcuMTY4IDM2LjIzODIyMiAxMi4wMDM1NTZhMjY4LjY4NjIyMiAyNjguNjg2MjIyIDAgMCAxIDg1Ljc4ODQ0NSA1Ni4wMzU1NTVjMjQuNzQ2NjY3IDI0LjAwNzExMSA0NC4yMDI2NjcgNTEuOTM5NTU2IDU3Ljc5OTExMSA4My4wNTc3NzggMTQuMTA4NDQ0IDMyLjMxMjg4OSAyMS4yMTk1NTYgNjYuNTYgMjEuMjE5NTU1IDEwMS44MzExMTF2MjAzLjA5MzMzM2MwIDEyLjg1Njg4OSA2LjAzMDIyMiAyNC44NjA0NDQgMTYuNTU0NjY3IDMyLjcxMTExMWw1OC40ODE3NzggNDQuMDMyYzExLjIwNzExMSA4LjUzMzMzMyAxOS4wNTc3NzggMTkuOTExMTExIDIyLjc1NTU1NSAzMy4wNTI0NDV6TTM5OC4yMjIyMjIgODU2LjE3Nzc3OFY4NTMuMzMzMzMzaDE3MC42NjY2Njd2Mi44NDQ0NDVDNTY4Ljg4ODg4OSA5MzUuOTM2IDUzMC42MDI2NjcgOTY3LjExMTExMSA0ODMuNTU1NTU2IDk2Ny4xMTExMTFTMzk4LjIyMjIyMiA5MzUuOTM2IDM5OC4yMjIyMjIgODU2LjE3Nzc3OHoiIHAtaWQ9IjM1MzMiIGZpbGw9IiNmZmZmZmYiPjwvcGF0aD48L3N2Zz4=) 50% 50% no-repeat;background-size:85%}.iziToast.iziToast-theme-dark .iziToast-icon.ico-warning{background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNTQxNjUxMTE1OTQ4IiBjbGFzcz0iaWNvbiIgc3R5bGU9IiIgdmlld0JveD0iMCAwIDEwMjUgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjUwOTYiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMTI4LjEyNSIgaGVpZ2h0PSIxMjgiPjxkZWZzPjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+PC9zdHlsZT48L2RlZnM+PHBhdGggZD0iTTk4NC4wMjI5NTAwMiA3NDYuODc1NDk3NUw2NDEuOTY0NjA3NTIgMTMwLjM4MDY1Yy0zMC40OTE4NDI1LTU0Ljg2MTUwMjUtNzcuOTMxMzE1LTg2LjMzNTY3MjUtMTMwLjE0MzUxLTg2LjMzNTY3MjUtNTIuMjkxNTc1IDAtOTkuNzQwOTcgMzEuNTEzODYtMTMwLjE0MzUxIDg2LjQzNDg5NzVMMzkuOTc2NDU1MDIgNzQ2LjgyNTg4NUM5Ljk2MDg5MjUyIDgwMC45NjMwNDUgNy45MTY4NTc1MiA4NTguMDE3NDIgMzQuMzUwMzk3NTIgOTAzLjM1MzMyMjVjMjYuNTEyOTIgNDUuNDc0ODE3NSA3Ny4xOTcwNSA3MS41NjEwNyAxMzkuMDczNzYgNzEuNTYxMDdoNjc3LjIyMDU0NzVjNjEuOTA2NDc3NSAwIDExMi41OTA2MDc1LTI2LjA4NjI1MjUgMTM5LjAxNDIyNS03MS40OTE2MTI1IDI2LjQ4MzE1MjUtNDUuMjc2MzY3NSAyNC40MjkxOTUtMTAyLjM0MDY2NS01LjYzNTk4LTE1Ni41NDcyODI1ek05MTEuNzU3MzgyNTIgODU3Ljk5NzU3NWMtOS44OTI3MzI1IDE2Ljk4NzMyLTMyLjE1ODgyMjUgMjYuNzMxMjE1LTYxLjExMjY3NzUgMjYuNzMxMjE1SDE3My40MjQxNTc1MmMtMjguOTQzOTMyNSAwLTUxLjIyOTg2NzUtOS43NjM3NC02MS4xNjIyOS0yNi43OTA3NS0xMC4wMjE3MjUtMTcuMTg1NzctNy42MTA1NTc1LTQxLjc0Mzk1NzUgNi41ODg1NC02Ny4zNzM3NzVsMzQxLjcxMTA1NS02MTYuMzY1ODU1YzE0LjA2MDE4MjUtMjUuMzkxNjc3NSAzMi43NTQxNzI1LTM5Ljk1NzkwNzUgNTEuMjU5NjM1LTM5Ljk1NzkwNzUgMTguNDk1NTQgMCAzNy4xOTk0NTI1IDE0LjU2NjIzIDUxLjMwOTI0NzUgMzkuOTM4MDYyNWwzNDIuMDI4NTc1IDYxNi40NDUyMzVjMTQuMjI4ODY1IDI1LjY0OTY2MjUgMTYuNjQwMDMyNSA1MC4xODgwMDUgNi41OTg0NjI1IDY3LjM3Mzc3NXoiIGZpbGw9IiNmZmZmZmYiIHAtaWQ9IjUwOTciPjwvcGF0aD48cGF0aCBkPSJNNTEyLjAxOTU0NzUyIDYzMC4yODYxMjI1YTQ1LjA4Nzg0IDQ1LjA4Nzg0IDAgMCAwIDQ1LjA5Nzc2MjUtNDUuMDA4NDZWMzc0LjY1Mjc1NWE0NS4wNzc5MTc1IDQ1LjA3NzkxNzUgMCAwIDAtNDUuMDk3NzYyNS00NS4wMDg0NiA0NS4wODc4NCA0NS4wODc4NCAwIDAgMC00NS4wOTc3NjI1IDQ1LjAwODQ2djIxMC42MTQ5ODVhNDUuMDg3ODQgNDUuMDg3ODQgMCAwIDAgNDUuMDk3NzYyNSA0NS4wMTgzODI1ek01MTIuMDE5NTQ3NTIgNjc1LjM3Mzk2MjVhNjAuMTcwMDQgNjAuMTcwMDQgMCAwIDAtNjAuMTMwMzUgNjAuMTMwMzVjMCAzMy4xNDExNSAyNi45MTk3NDI1IDYwLjEzMDM1IDYwLjEzMDM1IDYwLjEzMDM1IDMzLjE0MTE1IDAgNjAuMTMwMzUtMjYuOTE5NzQyNSA2MC4xMzAzNS02MC4xMzAzNSAwLTMzLjE0MTE1LTI2LjkxOTc0MjUtNjAuMTMwMzUtNjAuMTMwMzUtNjAuMTMwMzV6IiBmaWxsPSIjZmZmZmZmIiBwLWlkPSI1MDk4Ij48L3BhdGg+PC9zdmc+) 50% 50% no-repeat;background-size:85%}.iziToast.iziToast-theme-dark .iziToast-icon.ico-error{background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNTQxNjUxMzE1NTQ3IiBjbGFzcz0iaWNvbiIgc3R5bGU9IiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjY4MDYiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMTI4IiBoZWlnaHQ9IjEyOCI+PGRlZnM+PHN0eWxlIHR5cGU9InRleHQvY3NzIj48L3N0eWxlPjwvZGVmcz48cGF0aCBkPSJNNzcyLjI2NjY2NyA4ODMuMmMyNS42IDI1LjYgNjQgMjUuNiA4OS42IDAgMjUuNi0yNS42IDI1LjYtNjQgMC04OS42TDIzMC40IDE2Mi4xMzMzMzNjLTI1LjYtMjUuNi02NC0yNS42LTg5LjYgMC0yNS42IDI1LjYtMjUuNiA2NCAwIDg5LjZsNjMxLjQ2NjY2NyA2MzEuNDY2NjY3eiIgcC1pZD0iNjgwNyIgZmlsbD0iI2ZmZmZmZiI+PC9wYXRoPjxwYXRoIGQ9Ik04NjEuODY2NjY3IDI1MS43MzMzMzNjMjUuNi0yNS42IDI1LjYtNjQgMC04OS42LTI1LjYtMjUuNi02NC0yNS42LTg5LjYgMEwxNDAuOCA3OTMuNmMtMjUuNiAyNS42LTI1LjYgNjQgMCA4OS42czY0IDI1LjYgODkuNiAwbDYzMS40NjY2NjctNjMxLjQ2NjY2N3oiIHAtaWQ9IjY4MDgiIGZpbGw9IiNmZmZmZmYiPjwvcGF0aD48L3N2Zz4=) 50% 50% no-repeat;background-size:80%}.iziToast.iziToast-theme-dark .iziToast-icon.ico-success{background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNTQxNjUxMjQyNTMxIiBjbGFzcz0iaWNvbiIgc3R5bGU9IiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjYwMjMiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMTI4IiBoZWlnaHQ9IjEyOCI+PGRlZnM+PHN0eWxlIHR5cGU9InRleHQvY3NzIj48L3N0eWxlPjwvZGVmcz48cGF0aCBkPSJNNDA0LjI1MTQyOCA4MDkuNjEwN2MtMTEuNjY0MTAyIDAtMjMuMzI3MTc5LTQuNDQ4NzgyLTMyLjIyNTc2Ny0xMy4zNDczNjlMODMuOTgwMDk4IDUwOC4yMTk4MTVjLTE3Ljc5ODE5OS0xNy43OTcxNzUtMTcuNzk4MTk5LTQ2LjY1MzMzNSAwLTY0LjQ1MTUzM3M0Ni42NTMzMzUtMTcuNzk4MTk5IDY0LjQ1MTUzNCAwbDI4OC4wNDQ1MzkgMjg4LjA0MjQ5MWMxNy43OTgxOTkgMTcuNzk4MTk5IDE3Ljc5ODE5OSA0Ni42NTQzNTkgMCA2NC40NTI1NTgtOC44OTc1NjMgOC44OTg1ODctMjAuNTYxNjY1IDEzLjM0NzM2OS0zMi4yMjQ3NDMgMTMuMzQ3MzY5eiIgcC1pZD0iNjAyNCIgZmlsbD0iI2ZmZmZmZiI+PC9wYXRoPjxwYXRoIGQ9Ik00MDQuMjczOTUzIDgwOS42MTE3MjNjLTExLjY2NDEwMiAwLTIzLjMyNjE1NS00LjQ0OTgwNi0zMi4yMjU3NjYtMTMuMzQ4MzkyLTE3Ljc5ODE5OS0xNy43OTcxNzUtMTcuNzk5MjIyLTQ2LjY1MzMzNS0wLjAwMTAyNC02NC40NTE1MzRMODc2LjEwMTgxMyAyMjcuNzM1NjQ2YzE3Ljc5NjE1MS0xNy43OTgxOTkgNDYuNjUzMzM1LTE3Ljc5OTIyMiA2NC40NTE1MzMtMC4wMDEwMjQgMTcuNzk4MTk5IDE3Ljc5NzE3NSAxNy43OTkyMjIgNDYuNjUzMzM1IDAuMDAxMDI0IDY0LjQ1MTUzM0w0MzYuNTAwNzQ0IDc5Ni4yNjIzMDdjLTguODk4NTg3IDguODk4NTg3LTIwLjU2MjY4OSAxMy4zNDk0MTctMzIuMjI2NzkxIDEzLjM0OTQxNnoiIHAtaWQ9IjYwMjUiIGZpbGw9IiNmZmZmZmYiPjwvcGF0aD48L3N2Zz4=) 50% 50% no-repeat;background-size:85%}.iziToast.iziToast-theme-dark .iziToast-icon.ico-question{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAQAAAAAYLlVAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAAmJLR0QAAKqNIzIAAAAJcEhZcwAADdcAAA3XAUIom3gAAAAHdElNRQfhCQkUEg18vki+AAAETUlEQVRo3s1ZTWhbRxD+VlIuxsLFCYVIIQYVopBDoK5bKDWUBupDMNbJ5FBKg/FBziUQdE9yaC+FHBrwsdCfQ9RTGoLxwWl+DqHEojUFFydxnB9bInZDqOsErBrr6yGvs/ueX97bldTKo4Pe7puZb3Z33s7srIIjMY1jyCEjP6ImvyX8pF64arSHznKC06wzijY5xSKz7YbuYokV2lODsyyxqz3gSY6z6gCuqcpxJluFH+Z8U+D/0jyHoxFUBHgfvsGHIS9WMIUlVFFDFTUAGWSRQRY5HMeBEP6b+Ew9dh/7INd2jGeO59kfKdXP85zbIbfGQVf4sYC3N1hm3lo6zzIbPvk6x+zBk7wQGMEMB5xncIAzAS0XrFySSV72iS1yyBVcdA1x0afrsoUJgdFfY2+z8ADAXl7zz0KcwJiPfZKpVuABgClO+nRG+QIHDdfb4qlWwUXvKW4Z7vi6L4J9vg+vbfCeCeZH2RfOdMOc/HbCA4BvIW6EMQz7XK/ltd+hP+VzR9mgva2YSfyGI17fA7ynnocqeQNFfIJ0oHsdv6CC2+rXGBN6cQdveY3fcVRtmy/HDete+93zy8jA8zV7YkwYMrjHzRddRsCdiVCwwmh6wg9iTNC7Y9XIF1iS7kbUpsvvGEdPuTfSgAEjRpR096x0liPFD/Eqt2NMuBQzB2XhrACAApjFsuQFh9XdGAX70B3oSuNdnMVBaX+sopYxjwVpHFBVACyKTXNoktjD+6Ll8xhenS9MAAkAI/Lux2YNUOs4I413Ypg1SgEAu7kpFvWjaeJe0fJHDGe/cNaZBkekudw8PMA+0fMwlndZeAsJ5KR/qhUDUJCnSiyvRsolkJHGUgvjH8QXDgZopEzKMKDqCKrwEQ4C6MH7GEXC665buLJG8hlQc4LP4paxfJrOqYVYYY2UARfEIazTbgDg2dB98GebzJd54b8L/iWNdLyooeR6CHyZ+6xk0yKxkYg6nEVSUG4VJ9QJ9cxRCxO+9WiOyvgUeexXP1hLGH5nGuBWVtiSp4vqe3VP0UFWI9Wan4Er3v8q7jjPWVtm4FtcQQMrOKO2nOQCM5AyDMi56FDrKHA/1nyppS1ppBpYaE8wciEjGI2AaeM41kI4doDX4XiT3Qm1gevyruCgZg9P8xIv8m1nCzTKq6oiJ9xTMiZ505P5m8cdZ0CnZMVXHVljM7WMBzxpyDxygtdxoCEFTaMIWbZU85UvBjgUMYy0fBaAF8V1Lj9qWQ1aMZ5f4k9r+AGMSkMP1vZoZih6k6sicc5h/OFHM9vDqU/VIU7zJZdYYsKGH4g4nAJMGiXZRds1pVMoZ69RM5vfkbh0qkBhsnS2RLMLilQdL9MBHS9UAh0v1e6CYnXHy/WeeCcvLDwl/9OVze69tPKM+M+v7eJN6OzFpWdEF0ucDbhVNFXadnVrmJFlkVNGTS2M6pzmhMvltfPhnN2B63sVuL7fcNP3D1TSk2ihosPrAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDE3LTA5LTA5VDIwOjE4OjEzKzAyOjAweOR7nQAAACV0RVh0ZGF0ZTptb2RpZnkAMjAxNy0wOS0wOVQyMDoxODoxMyswMjowMAm5wyEAAAAZdEVYdFNvZnR3YXJlAHd3dy5pbmtzY2FwZS5vcmeb7jwaAAAAAElFTkSuQmCC) 50% 50% no-repeat;background-size:85%}.iziToast.iziToast-theme-dark .iziToast-buttons>a,.iziToast.iziToast-theme-dark .iziToast-buttons>button,.iziToast.iziToast-theme-dark .iziToast-buttons>input{color:#fff;background:rgba(255,255,255,.1)}.iziToast.iziToast-theme-dark .iziToast-buttons>a:hover,.iziToast.iziToast-theme-dark .iziToast-buttons>button:hover,.iziToast.iziToast-theme-dark .iziToast-buttons>input:hover{background:rgba(255,255,255,.2)}.iziToast.iziToast-theme-dark .iziToast-buttons>a:focus,.iziToast.iziToast-theme-dark .iziToast-buttons>button:focus,.iziToast.iziToast-theme-dark .iziToast-buttons>input:focus{box-shadow:0 0 0 1px rgba(255,255,255,.6)}.iziToast.iziToast-theme-dark.iziToast-color-red{background:#f56c6c;border-color:#f56c6c}.iziToast.iziToast-theme-dark.iziToast-color-orange{background:#e6a23c;border-color:#e6a23c}.iziToast.iziToast-theme-dark.iziToast-color-yellow{background:rgba(255,249,178,.9);border-color:rgba(255,249,178,.9)}.iziToast.iziToast-theme-dark.iziToast-color-blue{background:#409eff;border-color:#409eff}.iziToast.iziToast-theme-dark.iziToast-color-green{background:#67c23a;border-color:#67c23a}.iziToast.iziToast-layout2 .iziToast-body .iziToast-message,.iziToast.iziToast-layout2 .iziToast-body .iziToast-texts{width:100%}.iziToast.iziToast-layout3{border-radius:2px}.iziToast.iziToast-layout3::after{display:none}.iziToast .revealIn,.iziToast.revealIn{-webkit-animation:iziT-revealIn 1s cubic-bezier(.25,1.6,.25,1) both;-moz-animation:iziT-revealIn 1s cubic-bezier(.25,1.6,.25,1) both;animation:iziT-revealIn 1s cubic-bezier(.25,1.6,.25,1) both}.iziToast .slideIn,.iziToast.slideIn{-webkit-animation:iziT-slideIn 1s cubic-bezier(.16,.81,.32,1) both;-moz-animation:iziT-slideIn 1s cubic-bezier(.16,.81,.32,1) both;animation:iziT-slideIn 1s cubic-bezier(.16,.81,.32,1) both}.iziToast.bounceInLeft{-webkit-animation:iziT-bounceInLeft .7s ease-in-out both;animation:iziT-bounceInLeft .7s ease-in-out both}.iziToast.bounceInRight{-webkit-animation:iziT-bounceInRight .85s ease-in-out both;animation:iziT-bounceInRight .85s ease-in-out both}.iziToast.bounceInDown{-webkit-animation:iziT-bounceInDown .7s ease-in-out both;animation:iziT-bounceInDown .7s ease-in-out both}.iziToast.bounceInUp{-webkit-animation:iziT-bounceInUp .7s ease-in-out both;animation:iziT-bounceInUp .7s ease-in-out both}.iziToast .fadeIn,.iziToast.fadeIn{-webkit-animation:iziT-fadeIn .5s ease both;animation:iziT-fadeIn .5s ease both}.iziToast.fadeInUp{-webkit-animation:iziT-fadeInUp .7s ease both;animation:iziT-fadeInUp .7s ease both}.iziToast.fadeInDown{-webkit-animation:iziT-fadeInDown .7s ease both;animation:iziT-fadeInDown .7s ease both}.iziToast.fadeInLeft{-webkit-animation:iziT-fadeInLeft .85s cubic-bezier(.25,.8,.25,1) both;animation:iziT-fadeInLeft .85s cubic-bezier(.25,.8,.25,1) both}.iziToast.fadeInRight{-webkit-animation:iziT-fadeInRight .85s cubic-bezier(.25,.8,.25,1) both;animation:iziT-fadeInRight .85s cubic-bezier(.25,.8,.25,1) both}.iziToast.flipInX{-webkit-animation:iziT-flipInX .85s cubic-bezier(.35,0,.25,1) both;animation:iziT-flipInX .85s cubic-bezier(.35,0,.25,1) both}.iziToast.fadeOut{-webkit-animation:iziT-fadeOut .7s ease both;animation:iziT-fadeOut .7s ease both}.iziToast.fadeOutDown{-webkit-animation:iziT-fadeOutDown .7s cubic-bezier(.4,.45,.15,.91) both;animation:iziT-fadeOutDown .7s cubic-bezier(.4,.45,.15,.91) both}.iziToast.fadeOutUp{-webkit-animation:iziT-fadeOutUp .7s cubic-bezier(.4,.45,.15,.91) both;animation:iziT-fadeOutUp .7s cubic-bezier(.4,.45,.15,.91) both}.iziToast.fadeOutLeft{-webkit-animation:iziT-fadeOutLeft .5s ease both;animation:iziT-fadeOutLeft .5s ease both}.iziToast.fadeOutRight{-webkit-animation:iziT-fadeOutRight .5s ease both;animation:iziT-fadeOutRight .5s ease both}.iziToast.flipOutX{-webkit-backface-visibility:visible!important;backface-visibility:visible!important;-webkit-animation:iziT-flipOutX .7s cubic-bezier(.4,.45,.15,.91) both;animation:iziT-flipOutX .7s cubic-bezier(.4,.45,.15,.91) both}.iziToast-overlay.fadeIn{-webkit-animation:iziT-fadeIn .5s ease both;animation:iziT-fadeIn .5s ease both}.iziToast-overlay.fadeOut{-webkit-animation:iziT-fadeOut .7s ease both;animation:iziT-fadeOut .7s ease both}@-webkit-keyframes iziT-revealIn{0%{opacity:0;-webkit-transform:scale3d(.3,.3,1)}100%{opacity:1}}@-moz-keyframes iziT-revealIn{0%{opacity:0;-moz-transform:scale3d(.3,.3,1)}100%{opacity:1}}@-webkit-keyframes iziT-slideIn{0%{opacity:0;-webkit-transform:translateX(50px)}100%{opacity:1;-webkit-transform:translateX(0)}}@-moz-keyframes iziT-slideIn{0%{opacity:0;-moz-transform:translateX(50px)}100%{opacity:1;-moz-transform:translateX(0)}}@-webkit-keyframes iziT-bounceInLeft{0%{opacity:0;-webkit-transform:translateX(280px)}50%{opacity:1;-webkit-transform:translateX(-20px)}70%{-webkit-transform:translateX(10px)}100%{-webkit-transform:translateX(0)}}@-webkit-keyframes iziT-bounceInRight{0%{opacity:0;-webkit-transform:translateX(-280px)}50%{opacity:1;-webkit-transform:translateX(20px)}70%{-webkit-transform:translateX(-10px)}100%{-webkit-transform:translateX(0)}}@-webkit-keyframes iziT-bounceInDown{0%{opacity:0;-webkit-transform:translateY(-200px)}50%{opacity:1;-webkit-transform:translateY(10px)}70%{-webkit-transform:translateY(-5px)}100%{-webkit-transform:translateY(0)}}@-webkit-keyframes iziT-bounceInUp{0%{opacity:0;-webkit-transform:translateY(200px)}50%{opacity:1;-webkit-transform:translateY(-10px)}70%{-webkit-transform:translateY(5px)}100%{-webkit-transform:translateY(0)}}@-moz-keyframes iziT-revealIn{0%{opacity:0;transform:scale3d(.3,.3,1)}100%{opacity:1}}@-webkit-keyframes iziT-revealIn{0%{opacity:0;transform:scale3d(.3,.3,1)}100%{opacity:1}}@-o-keyframes iziT-revealIn{0%{opacity:0;transform:scale3d(.3,.3,1)}100%{opacity:1}}@keyframes iziT-revealIn{0%{opacity:0;transform:scale3d(.3,.3,1)}100%{opacity:1}}@-moz-keyframes iziT-slideIn{0%{opacity:0;transform:translateX(50px)}100%{opacity:1;transform:translateX(0)}}@-webkit-keyframes iziT-slideIn{0%{opacity:0;transform:translateX(50px)}100%{opacity:1;transform:translateX(0)}}@-o-keyframes iziT-slideIn{0%{opacity:0;transform:translateX(50px)}100%{opacity:1;transform:translateX(0)}}@keyframes iziT-slideIn{0%{opacity:0;transform:translateX(50px)}100%{opacity:1;transform:translateX(0)}}@-moz-keyframes iziT-bounceInLeft{0%{opacity:0;transform:translateX(280px)}50%{opacity:1;transform:translateX(-20px)}70%{transform:translateX(10px)}100%{transform:translateX(0)}}@-webkit-keyframes iziT-bounceInLeft{0%{opacity:0;transform:translateX(280px)}50%{opacity:1;transform:translateX(-20px)}70%{transform:translateX(10px)}100%{transform:translateX(0)}}@-o-keyframes iziT-bounceInLeft{0%{opacity:0;transform:translateX(280px)}50%{opacity:1;transform:translateX(-20px)}70%{transform:translateX(10px)}100%{transform:translateX(0)}}@keyframes iziT-bounceInLeft{0%{opacity:0;transform:translateX(280px)}50%{opacity:1;transform:translateX(-20px)}70%{transform:translateX(10px)}100%{transform:translateX(0)}}@-moz-keyframes iziT-bounceInRight{0%{opacity:0;transform:translateX(-280px)}50%{opacity:1;transform:translateX(20px)}70%{transform:translateX(-10px)}100%{transform:translateX(0)}}@-webkit-keyframes iziT-bounceInRight{0%{opacity:0;transform:translateX(-280px)}50%{opacity:1;transform:translateX(20px)}70%{transform:translateX(-10px)}100%{transform:translateX(0)}}@-o-keyframes iziT-bounceInRight{0%{opacity:0;transform:translateX(-280px)}50%{opacity:1;transform:translateX(20px)}70%{transform:translateX(-10px)}100%{transform:translateX(0)}}@keyframes iziT-bounceInRight{0%{opacity:0;transform:translateX(-280px)}50%{opacity:1;transform:translateX(20px)}70%{transform:translateX(-10px)}100%{transform:translateX(0)}}@-moz-keyframes iziT-bounceInDown{0%{opacity:0;transform:translateY(-200px)}50%{opacity:1;transform:translateY(10px)}70%{transform:translateY(-5px)}100%{transform:translateY(0)}}@-webkit-keyframes iziT-bounceInDown{0%{opacity:0;transform:translateY(-200px)}50%{opacity:1;transform:translateY(10px)}70%{transform:translateY(-5px)}100%{transform:translateY(0)}}@-o-keyframes iziT-bounceInDown{0%{opacity:0;transform:translateY(-200px)}50%{opacity:1;transform:translateY(10px)}70%{transform:translateY(-5px)}100%{transform:translateY(0)}}@keyframes iziT-bounceInDown{0%{opacity:0;transform:translateY(-200px)}50%{opacity:1;transform:translateY(10px)}70%{transform:translateY(-5px)}100%{transform:translateY(0)}}@-moz-keyframes iziT-bounceInUp{0%{opacity:0;transform:translateY(200px)}50%{opacity:1;transform:translateY(-10px)}70%{transform:translateY(5px)}100%{transform:translateY(0)}}@-webkit-keyframes iziT-bounceInUp{0%{opacity:0;transform:translateY(200px)}50%{opacity:1;transform:translateY(-10px)}70%{transform:translateY(5px)}100%{transform:translateY(0)}}@-o-keyframes iziT-bounceInUp{0%{opacity:0;transform:translateY(200px)}50%{opacity:1;transform:translateY(-10px)}70%{transform:translateY(5px)}100%{transform:translateY(0)}}@keyframes iziT-bounceInUp{0%{opacity:0;transform:translateY(200px)}50%{opacity:1;transform:translateY(-10px)}70%{transform:translateY(5px)}100%{transform:translateY(0)}}@-moz-keyframes iziT-fadeIn{from{opacity:0}to{opacity:1}}@-webkit-keyframes iziT-fadeIn{from{opacity:0}to{opacity:1}}@-o-keyframes iziT-fadeIn{from{opacity:0}to{opacity:1}}@keyframes iziT-fadeIn{from{opacity:0}to{opacity:1}}@-moz-keyframes iziT-fadeInUp{from{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}to{opacity:1;-webkit-transform:none;transform:none}}@-webkit-keyframes iziT-fadeInUp{from{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}to{opacity:1;-webkit-transform:none;transform:none}}@-o-keyframes iziT-fadeInUp{from{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}to{opacity:1;-webkit-transform:none;transform:none}}@keyframes iziT-fadeInUp{from{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}to{opacity:1;-webkit-transform:none;transform:none}}@-moz-keyframes iziT-fadeInDown{from{opacity:0;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}to{opacity:1;-webkit-transform:none;transform:none}}@-webkit-keyframes iziT-fadeInDown{from{opacity:0;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}to{opacity:1;-webkit-transform:none;transform:none}}@-o-keyframes iziT-fadeInDown{from{opacity:0;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}to{opacity:1;-webkit-transform:none;transform:none}}@keyframes iziT-fadeInDown{from{opacity:0;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}to{opacity:1;-webkit-transform:none;transform:none}}@-moz-keyframes iziT-fadeInLeft{from{opacity:0;-webkit-transform:translate3d(300px,0,0);transform:translate3d(300px,0,0)}to{opacity:1;-webkit-transform:none;transform:none}}@-webkit-keyframes iziT-fadeInLeft{from{opacity:0;-webkit-transform:translate3d(300px,0,0);transform:translate3d(300px,0,0)}to{opacity:1;-webkit-transform:none;transform:none}}@-o-keyframes iziT-fadeInLeft{from{opacity:0;-webkit-transform:translate3d(300px,0,0);transform:translate3d(300px,0,0)}to{opacity:1;-webkit-transform:none;transform:none}}@keyframes iziT-fadeInLeft{from{opacity:0;-webkit-transform:translate3d(300px,0,0);transform:translate3d(300px,0,0)}to{opacity:1;-webkit-transform:none;transform:none}}@-moz-keyframes iziT-fadeInRight{from{opacity:0;-webkit-transform:translate3d(-300px,0,0);transform:translate3d(-300px,0,0)}to{opacity:1;-webkit-transform:none;transform:none}}@-webkit-keyframes iziT-fadeInRight{from{opacity:0;-webkit-transform:translate3d(-300px,0,0);transform:translate3d(-300px,0,0)}to{opacity:1;-webkit-transform:none;transform:none}}@-o-keyframes iziT-fadeInRight{from{opacity:0;-webkit-transform:translate3d(-300px,0,0);transform:translate3d(-300px,0,0)}to{opacity:1;-webkit-transform:none;transform:none}}@keyframes iziT-fadeInRight{from{opacity:0;-webkit-transform:translate3d(-300px,0,0);transform:translate3d(-300px,0,0)}to{opacity:1;-webkit-transform:none;transform:none}}@-moz-keyframes iziT-flipInX{from{-webkit-transform:perspective(400px) rotate3d(1,0,0,90deg);transform:perspective(400px) rotate3d(1,0,0,90deg);opacity:0}40%{-webkit-transform:perspective(400px) rotate3d(1,0,0,-20deg);transform:perspective(400px) rotate3d(1,0,0,-20deg)}60%{-webkit-transform:perspective(400px) rotate3d(1,0,0,10deg);transform:perspective(400px) rotate3d(1,0,0,10deg);opacity:1}80%{-webkit-transform:perspective(400px) rotate3d(1,0,0,-5deg);transform:perspective(400px) rotate3d(1,0,0,-5deg)}to{-webkit-transform:perspective(400px);transform:perspective(400px)}}@-webkit-keyframes iziT-flipInX{from{-webkit-transform:perspective(400px) rotate3d(1,0,0,90deg);transform:perspective(400px) rotate3d(1,0,0,90deg);opacity:0}40%{-webkit-transform:perspective(400px) rotate3d(1,0,0,-20deg);transform:perspective(400px) rotate3d(1,0,0,-20deg)}60%{-webkit-transform:perspective(400px) rotate3d(1,0,0,10deg);transform:perspective(400px) rotate3d(1,0,0,10deg);opacity:1}80%{-webkit-transform:perspective(400px) rotate3d(1,0,0,-5deg);transform:perspective(400px) rotate3d(1,0,0,-5deg)}to{-webkit-transform:perspective(400px);transform:perspective(400px)}}@-o-keyframes iziT-flipInX{from{-webkit-transform:perspective(400px) rotate3d(1,0,0,90deg);transform:perspective(400px) rotate3d(1,0,0,90deg);opacity:0}40%{-webkit-transform:perspective(400px) rotate3d(1,0,0,-20deg);transform:perspective(400px) rotate3d(1,0,0,-20deg)}60%{-webkit-transform:perspective(400px) rotate3d(1,0,0,10deg);transform:perspective(400px) rotate3d(1,0,0,10deg);opacity:1}80%{-webkit-transform:perspective(400px) rotate3d(1,0,0,-5deg);transform:perspective(400px) rotate3d(1,0,0,-5deg)}to{-webkit-transform:perspective(400px);transform:perspective(400px)}}@keyframes iziT-flipInX{from{-webkit-transform:perspective(400px) rotate3d(1,0,0,90deg);transform:perspective(400px) rotate3d(1,0,0,90deg);opacity:0}40%{-webkit-transform:perspective(400px) rotate3d(1,0,0,-20deg);transform:perspective(400px) rotate3d(1,0,0,-20deg)}60%{-webkit-transform:perspective(400px) rotate3d(1,0,0,10deg);transform:perspective(400px) rotate3d(1,0,0,10deg);opacity:1}80%{-webkit-transform:perspective(400px) rotate3d(1,0,0,-5deg);transform:perspective(400px) rotate3d(1,0,0,-5deg)}to{-webkit-transform:perspective(400px);transform:perspective(400px)}}@-moz-keyframes iziT-fadeOut{from{opacity:1}to{opacity:0}}@-webkit-keyframes iziT-fadeOut{from{opacity:1}to{opacity:0}}@-o-keyframes iziT-fadeOut{from{opacity:1}to{opacity:0}}@keyframes iziT-fadeOut{from{opacity:1}to{opacity:0}}@-moz-keyframes iziT-fadeOutDown{from{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}@-webkit-keyframes iziT-fadeOutDown{from{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}@-o-keyframes iziT-fadeOutDown{from{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}@keyframes iziT-fadeOutDown{from{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}@-moz-keyframes iziT-fadeOutUp{from{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}}@-webkit-keyframes iziT-fadeOutUp{from{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}}@-o-keyframes iziT-fadeOutUp{from{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}}@keyframes iziT-fadeOutUp{from{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}}@-moz-keyframes iziT-fadeOutLeft{from{opacity:1}to{opacity:0;-webkit-transform:translate3d(-200px,0,0);transform:translate3d(-200px,0,0)}}@-webkit-keyframes iziT-fadeOutLeft{from{opacity:1}to{opacity:0;-webkit-transform:translate3d(-200px,0,0);transform:translate3d(-200px,0,0)}}@-o-keyframes iziT-fadeOutLeft{from{opacity:1}to{opacity:0;-webkit-transform:translate3d(-200px,0,0);transform:translate3d(-200px,0,0)}}@keyframes iziT-fadeOutLeft{from{opacity:1}to{opacity:0;-webkit-transform:translate3d(-200px,0,0);transform:translate3d(-200px,0,0)}}@-moz-keyframes iziT-fadeOutRight{from{opacity:1}to{opacity:0;-webkit-transform:translate3d(200px,0,0);transform:translate3d(200px,0,0)}}@-webkit-keyframes iziT-fadeOutRight{from{opacity:1}to{opacity:0;-webkit-transform:translate3d(200px,0,0);transform:translate3d(200px,0,0)}}@-o-keyframes iziT-fadeOutRight{from{opacity:1}to{opacity:0;-webkit-transform:translate3d(200px,0,0);transform:translate3d(200px,0,0)}}@keyframes iziT-fadeOutRight{from{opacity:1}to{opacity:0;-webkit-transform:translate3d(200px,0,0);transform:translate3d(200px,0,0)}}@-moz-keyframes iziT-flipOutX{from{-webkit-transform:perspective(400px);transform:perspective(400px)}30%{-webkit-transform:perspective(400px) rotate3d(1,0,0,-20deg);transform:perspective(400px) rotate3d(1,0,0,-20deg);opacity:1}to{-webkit-transform:perspective(400px) rotate3d(1,0,0,90deg);transform:perspective(400px) rotate3d(1,0,0,90deg);opacity:0}}@-webkit-keyframes iziT-flipOutX{from{-webkit-transform:perspective(400px);transform:perspective(400px)}30%{-webkit-transform:perspective(400px) rotate3d(1,0,0,-20deg);transform:perspective(400px) rotate3d(1,0,0,-20deg);opacity:1}to{-webkit-transform:perspective(400px) rotate3d(1,0,0,90deg);transform:perspective(400px) rotate3d(1,0,0,90deg);opacity:0}}@-o-keyframes iziT-flipOutX{from{-webkit-transform:perspective(400px);transform:perspective(400px)}30%{-webkit-transform:perspective(400px) rotate3d(1,0,0,-20deg);transform:perspective(400px) rotate3d(1,0,0,-20deg);opacity:1}to{-webkit-transform:perspective(400px) rotate3d(1,0,0,90deg);transform:perspective(400px) rotate3d(1,0,0,90deg);opacity:0}}@keyframes iziT-flipOutX{from{-webkit-transform:perspective(400px);transform:perspective(400px)}30%{-webkit-transform:perspective(400px) rotate3d(1,0,0,-20deg);transform:perspective(400px) rotate3d(1,0,0,-20deg);opacity:1}to{-webkit-transform:perspective(400px) rotate3d(1,0,0,90deg);transform:perspective(400px) rotate3d(1,0,0,90deg);opacity:0}} \ No newline at end of file diff --git a/public/static/system/layui/css/modules/tags.css b/public/static/system/layui/css/modules/tags.css deleted file mode 100644 index ae4af7b..0000000 --- a/public/static/system/layui/css/modules/tags.css +++ /dev/null @@ -1 +0,0 @@ -.layui-tags{border:1px solid #e3e7f1;height:29px;line-height:1.3;background-color:#fff;border-radius:2px;padding-left:10px}.layui-tags input{width:90px;font-family:helvetica;font-size:13px;border:1px solid transparent;background:0 0;color:#000;outline:0;height:28px;float:left}.layui-tags .tag-elem{float:left;height:25px;font-size:12px;box-sizing:border-box;margin-right:5px;padding:5px;margin-top:2px;-moz-border-radius:2px;-webkit-border-radius:2px;font-family:helvetica;color:#1890ff;background:#e6f7ff;border:1px solid #91d5ff}.layui-tags span.tag-elem i{font-family:Verdana;color:#0084ff;margin-left:5px;font-size:12px;cursor:pointer}#layui-tags-ajax li b,.layui-tags span.tag-elem i:hover{color:red}#layui-tags-ajax{text-align:left;cursor:default;background:#fff;border:1px solid rgba(0,0,0,.15);border-radius:2px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,.175);-moz-box-shadow:0 6px 12px rgba(0,0,0,.175);box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box;position:absolute;display:none;z-index:1029;max-height:254px;overflow:hidden;overflow-y:auto;width:138px;box-sizing:border-box}#layui-tags-ajax li{position:relative;line-height:20px;overflow:hidden;text-overflow:ellipsis;font-size:1em;color:#333;padding:5px 10px;cursor:pointer;white-space:nowrap}#layui-tags-ajax .layui-tag-this,#layui-tags-ajax li:hover{background:#f0f0f0} \ No newline at end of file diff --git a/public/static/system/layui/font/iconfont.eot b/public/static/system/layui/font/iconfont.eot index 622d7ec82e4afb89ab919a9cc9b25fb6dfe9cf75..3f5e98bb584b80ae0ce0d39b598fb37423ea8220 100644 GIT binary patch literal 54172 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

?x(Azz|<-o<;&g<&wtZdwT(dKbDA!{34 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

N=BJJ zhh3IV8%{={-E~n>9d!9{#0nFQz5qlt!R&R>=fp&;hpMWYba^e9f(~1*h;tuB4LK#_ z10A8T(`_(H^e5bv4r-5{SVC0iyS$L(6xbJVassOKx#*X~Xk9n$5b_XFM5{U|&g+vU4PacvMw^Qqi zTW&++6NP@o(*wh=r&{XHE-81cUH|>{YdgwIvfZVs$8ArEMz?#Q)R`HDhtc>KmoLk= zj$)h109ZK5DgE5mz2)L9VEenvtwzb{Hl~|$v!`E}nc{L8&hz^n-oWC8<6}3j-@9=g z-&(hBx*FvUmrW<;< z_VjGMY-?{wbh{+clV7%eSw6okABz~>vJsn(IL~nh`!$<}ri6Q84D$UB&~c-C&d^&l z7GmZ*GROK6%oTT3;3qcAC5HXo9eIX2N>S!5;?$iiR8KYow^;hUIG8yFhk3uZC`gCq z95Q}87rAW9y4BZnE%)`S*Zuv}Ty*NPaJ|Eks!N9&gBE|nPg@2OCQn@wv)31ODS2}k zo6S%u1jash2~^~JKP)= z)nA(;O;K+)=Au7V|14$)n*-Tc(5ILTKM{Sglq1;M6jKUi7EER$#&{teHUEYMvu*zR z{?-^Q)f^|jiayPOZ*D@bwqdt!1vn8LTPnd-&5)&Zk6AD{+#7_?PwM8Um_VSE6Cg1u zx#;#Yh+h5_t9^}`#TjgU!zpBIR+{Ni*&xFy0UK!PJ&Gc^W%a>(|Kc$SCiatQ^<$IC z`A1FPzq#v9T3oQ`(qn?1@&keeMGC*?3g^rp!KXk|OhHl}hIU#})H~_NM8V+w)9bId zKb=>n>*(|OkAD&$i#GfP=O~%^+5Fgj#hEJ<PSLV8%#G3cO&|dl-!h< z*K2|La(?+nz92R($9cWxiW&d8_{@oTE*BSqaq#54AC9nlz&CsbH&_*%y7T3r|6q@W zL_dp5@aTWl_T}-Blx6;T->T}W?&|wK(&;Om&Yg5RolY{DTyqc1#oQN6Cg~hAnIw~g zVHlW04qXL7QB)2Y1q4M@L`6iF0Tx+zMS%reMG^dX?0O%duBMCM_o?p8glm_7emSb& zs(RnI-+Jpkp7Z zV72>2Nd%%vxTC42B4Lw65w^CHNr2BKkc@zEXmL9*=PF(H>T8;E>GkpS#+*?GCEC2E zKC-H@xwf;a+G%sff>E-(t%XU9Xo%FfEGi@{YDK83rp0D8RVYf(VfA|>b{`qd2%_qY zS^a)k8JTRdl5i=$fPvfHaz(k3?OV69H>WB~f}+9Zty@`L6>kYh*r|X;Z0kCC-66MK zZMMnI$|bGK)-MHwsTEk^P%bE;mhh59-FUkd6h}+nmRmRf>l!~0f6O7Qd9vh(35VjX z=8o-_qvRh{+(vT$OVlJJz>Ul^qUaxG@q> zEUC2FO@Jro(VkTswloayjVkcxRZ-qZ^z zURF_8*Hu?n@x~86)wrw?f2W)JoA9TdDW0N!TAQB~z74wo!h{LJB4iWfP7C$P3;2w0 zy@Cx4Tw}6FXiJg6HxUCF59@MW9O1&97Km@CZ80Gxvx#tRZD(z57_6!t;-mW)ovNz# z0oB6c(f5$aAa!6*x0wp=R>7+D&>r9LEx}?G1fHXl!tMmSgD0igT?{8J0a z#0rjy1x4WS!ucXWmg;lN{a9DUttfD(``PZkay@npD?Q>Kj|ixe)Bn0 zk9S$C!&dE9He?G|TdM_jH_mN1&s)oJt{sQf-QCvm8f4LKrmWTMJ#V?N@ZHY|Ulr8SX%gsHe^keTiGt{PHU*zl43`+t4o)5;!=6anquq{ zb^_OsW;@w#%AV5x=`9z^7{%KYjrSmJR&o%ghz(Wp-Dk zr9F`Fw_6i#t*>`~8}GQV(;D+_zxY^7eMUNeNo_?WWCq z$?7)v9MP(Md*bzgPKJIWyT#|?4$sz3(du?sJnWwbjmANX+vXQd4cb2(fq;Wa4JOfV zb89a(Za=s)&9^OYT3!L0#`7C3Ay+arI?>d-RN>xoC+z7xt2eL50_>!kn-W2nNA(8d z2UdvqUS^0^hWkVDa)UeM;>3#S>(MRHt?z{uO&`Tv!JHv|&jR)9h5Hud>AKp3-Z5@t zThSq|iuV5y;$pPZ+eW`~Uu>a#5h8_JG?(C*x%gwT| zQ8oh@qA)3~?e5(uL44M+YT5Lahhy=TohC)vaD1&W|AJtuZd}`?*hNWh>CV>Sdf#B1 z*=pu9Y+LQ6%hp|)s!mn)E?c+aL{03(U3+A+S>C&K%L(nHTRxHN2nY(oZbU9y(LcRx zd3)!3FNsTp_!BsM(>8WT^?0o8378Xn`N$EzrZDfe zeOKso+vdMzb^nncw7K`wS5YxsEZUM6fK`ZlAT6!iS{1t6g$C=7xJ=f{++wr^Ed(m#x5=Og(^zS6Qk^R_c*TOHp$R2p{#TDj|{66hZgzFB82BeYRsfPbf)c~5AzLNPGPIcnN>M^b$bx8N4i0`~jp38M@>@&<-z;ORsq9I9 z$=7MoKbBZO)DNWr{@zJ$t(8^vR`ZWrUaE+kO@ydG3T?Gxe|QAzbQjV_pvJnuw?rX( zpmtLn%6`a;&xfv;bZuuFcCLv+$!8VQA`St5agWwbAK?h3`~G0bJ7*GkE(aM*V#|c? zb5(Iudul~Zdky{dIKr{8BbiCw*%oPtMiJLyOOwSL@S4pySl9(|cexvXclxa^o6Tj- zIp~MKR#8*4q^9P><$4|3PaR>qJ?wy>QG3dVN}|zg%w9{Wnu{RqM;*)yA9=Uc`X>|6 zr%Z5q#a@X?e+J_i01_aIF||tup0sA_d@m2u-aNE@OS;A8wRN`d+b{HD%gv;>Y#*XK z(}Nea!w^_sJ8&4~|GlvP0Rfi;TO`5Jjp}`nlBG*>_B7!G@Lbe~rsDta^ilXE9r^wZ z#Sc3EeIWztFUowOQP6cQOGz95e^^r4iOdD6d9KY)bTLp|^v39z1dz*u3wXo%f_>_n z2jA#>rVjP=_xBu{V&X!Idz?^L)1h!S^$s3`!pl@tn_nnetfa6NPD{O1iFSsL=hD=d zG@njl9X^S*r3vG4`TsJXKp)c6y-Br{a3!mN6M!`X5b3#Ot`!IaiFfv=yke@TJ(^;M zh13;4);ID#^kfCCX z{93SJtVE1Wa z4%*0(t%tdi*#;I*z#mgzcEHJ$fQ2(LLWa^&F58nhdXT>6}j8<7{~ z!fUcw^;JQIN;dv3chpzSert2t0{%Eedp%Z!G${846j4-~;0ft;_Q2sZ?hj%=|Cd{D z=G(iMxVdC@#;xToyAWLp9_|ip&}p15iGD543vJ;WFi_!~TAs4MlC1aBtvHo0yfA_DcGE+S(?BkY!u zk-}Zz6UBZ=39^~(JD&wQY!(b*Ke3NwboeTPjB&;TOT++KGxmS(>(^-PTwCN5xO8H@nUYk6dN`cSh=vz5Osm|m>P)oB-7NS zqOq(#Y!+@wbd^{u_C48Ul^dFy8)U0X&X$Kl<;>Kyi_j}J*Voq8ZzhC_T}_RJ-#c59 zm6=L@C0%HkJ2}@td9o||ukT+`KDU!fZyq20>FB{NRN>CK!>_J)B7Y@7yo&4AKZF7P zH~73XLi4{DEv}L!&oIM=PhX#gloVZi$aU3XGeK2MZ~9FYM``~J)f`?uyK{0;d)Xqv^2GBItpB4i%`CQX0RNpdr^o^FVlyb zes~naE{2_#WH-90GhSL9BT9<;#!;NEc%!=Vn`I#OM+f<0F5oBWD?v&)eZAzjr)oR; zRzD3~JeTG4FIF#YsfyS`;&nJJe5u!%NiM6+8MLqN+QrT@wAJ*+YS@`AORKBu0%7e8 zl-1gqa(_)CwQ@7kkZf_IJ+tf>;B4h1a9=Xf9*MmN1MeAb0JY}=wLseJL>4HLcssC5 zfS)T;*@Tp$OTJ7_ri=Rh$MTJh_}jd;5f;W5HLY!IY=?E{+AlVKk)0maUWHMbIr+<9 zCcpMI?bYX=d*KCU{^c*VSCjhJ(E)mqhrzj%e=bJNSt~O#7R4Z!^Z^d^4jRw8<3_hnKzpK`ds|JaGyZYxCvVg2s=PUCo&)76LcQdhZwZvME(&M zk$^0h(mI^)lWg$7=%(DVj!oO!_pffaM|u%yk>vKK>h^%Hn>z!1l_K6NVYaUY_U$o>_6rEA zqLD25Ly)ypPDg;n{MWriA(A9fM{#^1_|4gL9U(W8!{*tH36y+eRSAL!SrpQP9Pmi? z2Cyhn0f4^H!+Ah32(ex1L>E06ZZunWtyev9Hj8-j&BaCSc-6{s_~a#bP*8v!eupF7-|ydH3c5_&%U8l(*Ja!h z&@Tpd7=t)T4i2sf29w)OhS*~Uw;BfUD~7E8?*z%+I5CI zLT>I0Ssz_|zwgbZ?+AxbH!5}o(T@K9w8MdRAb`P+P?%LCXuys@e;=F!(GKL;o(u-p z?jJ<6i^CnhOTz2$o2|gw-VZt)5;1+o1FlP-?^yAQ+jS8_f?&(_UuXsO`-x=f0^p|- zDOrU@Q6d>D-hXS!#*?Y4 z`(rIlH?Pbj5}Es3uDmjTF5j{~?>8_;0;?`fRb{TcvgPWX?+x_!!GjaUo0^*3y*pRN z_a4|2zds39VpT5+qlQEx|Awsh2KssftME*u!zkKl_^|I0YTFD&kChgJCtxmtuH%Ug z!BGmYpi^mhyP(WEm{59;`gY#K$U_IDVDUv3w>{)6MyJfAU8Nnp3I)M^>$^MB5NeD( z^r3a@KK#&A4}Cb5Or}2k(8$@a3_V*T;c#SY&+R+EW{_;IP({_2npni^giu*F8886s zzF;g_*K}TIP1tIH+!+Xzv7-G(koAMl$|RG4lj}b8(0BE(*thpz_wM`fI^p4kFb+Li z=MEp9-PW_L@Bkb=Z5}vynmxdM$4fV=4%KFHS)C?x7-&^y#V8YuNjga;9HqZf{}B(M zLK2X`d{_c|x-vZ9Sr|=$Q0YJm(}m=s>$LEIztZm#?$Sag0>WEJ3op<2(i|7g;P@1! z3Y4-4Ws9!Q|CugvJ!1ikBAw~CpDJCWD~$F~+B(aMpC^kSh0^8HY3XcXT)gGE7PmjO z=vm%P8j7U1e=bWwZ#qBM@Z$5n)Ad58m{l*Dcz&^IaJ$`I@*t?tcZ*$-G#KJ2F0Ac%$c zoYEdSsdb-XeJ6$f-ue07UP0{DX#k1?d>HbF7;H~#pf^p!?{yNTb-~;Mu?@&@V*Sb4 zpF{!J;|+-%u;Wm@{!f^kNdkr>H6h>)-;yG_T^E6pc&|90NXSvF3`5bw+P*=?HgqVz z8Nx%scsn)~<0b4BEwcEZciWwo&sm(;I4$>>U6&P0ScJ!@uoGw$^oaxiZ~U8G=7%U$ z3=Th}`t(YLrpV2adm?Nu^6g^gMaTK|R9x^`obxD;)T~||K@8~c^Gm`ru=A%Fj%8#L z`Bt~Ww^QNsva_t%`~pvQ{Llhc?++Ie!bW1&&gRe)^QQ@<_iPqDL1T;LI>ok>A?ig! z=jcerM!|M;s2$h4Zyh_6*)g`GwH1fVBk!uE>|}OFD=U@CvS;3XyJ>vB23z!goi>NE zBL%KAN4l{EDIgTx5=j|!3sN#h1iH#OTT+2nE%W}5to+TpJXN>4u5R_VHFZq;ho>W= zpVh@Wyzt_dTjwssjobuqygt zBYy@GP76sqK_O76P3*WV1(VO5PhiJ;?Dh5*JM1ryv+c(V-&%J$7jX@j>h0Q=%h{IW z+KQ(xU%-{!%^%a{dbA6j2mIs__>sRCG6JmBx`2;{J!EQ_F^gvh=2Zz*1NUj7C28X1 zvQQkx<)p4+S(rC&LkbKZ-NUpyYoAN(G3u|%EMk}GoTlai`%LHjd2I)F(|g@c5H6)^#1LpfY* zenkhV9F8@Yg(*dcW!UB3=M06M+9j?adr)B7B@k>e_CEM<1st8EoWY@%^A5<%{7w^H zFgg9Tz!u~DKV|9lGO7vj9B_R5^uk*EB-UCh{PwYSWr1X?tD9(TT{IbVRtgXpDcHr) z0qDH&7=&QGctE)}cx3rX2XLxhA9Cvl-QR$H<~P4lTB518wp6r5*+mg+A$Qri_u%;} zmyJhAQi~+6O(d@6sf2dpn)2S$doFd|uutD_9u=O$e$z<3-UPcB6(YujjX`j% zOCvCYL*!T!puq6?k1<=<+Kd6(H*%=!a5C3i6Q6gn2?ocurs_z$_z?#6SE7JQ6;!cY0WwefDat zi@%~}9>h=M*T4RC_7o0Kjvj#K#geDVML_|W%_e+ZBB zSFx`i#5aSdC#JeB*Rq7tvOz9tOfky5KGLG9FP|!&6 zWQ2`j1|Ur)tZNT@o%Vo9=<$FwuV}5R4Z8rgS{=<~>J)%KswNmx$`-RMnH*JN=ZY#a zwIr_6u8K9@R831yRV8x6^6=`>V3jwK7#Y5B|Fx#5ucE6t;H|Itg=%)hb@|CjUCvKF z;(g$b7Hi5DYtURe8?4JQ&+W?yDnzVK7GknC@;(D+=zT{m##^^TWf=6{Fh=c3#fyLC zofH^Pzjag8p48%GOUz!fneH{=&sLJ{-@{+PK2b!2?ZZxye_Q$sf@N7pho)#OdZa`= zg4cuH0t6SZ^gv6IM9l#sw&MB^fF?)*}0=UsblWRBB}j+;eR6u(~?W z^8x49t*`z5kH`O9{(E`te>F4p1*wXF|1@O3R#gwku-tPM0Z{cLw^xAv1il)p-O z;sfz7SAD_VQO(FFNe0dKal|3JTOXsovM8wE7P73AK&LFGW0K%+^pIT(!i2Mkm}e6b zF$=;+=U;I8{Z644$HGVX&ca>K+;tb7Bm#kP2R{7%aZmyHVBZD@T|44;@^4Uy!b;Eu z?4b5hc93nL+{m)%c=_FTqrF5M|1LW7#TvnlrbUAtqdje$o6Df7(??tf-e{^B7d@;f1EjH2IbG*yU-RkJ&S6!u#F4?1e z1eMWLDCq^Ub`amzscYc3mR(ZzA?)}%wU;Xb`gyWC9SBW276_dQgLyVB5lIN%iH}=& zjWAEcQju`vS~AcBVnUF%-VNVa$O%X|0x#vFq7XAg7Yjo;jgGaI0Q!ie6k^zvbagn% zo+3K5vyNCR{L1g_MU=9_j4!biWMIg(H16lu2Ca@>M{xe5y}kT-yHq$yJAr}Y<6ti| zT}&waXRN8Iuc;~O@WKAr$F8ogEcXML)b8-PEgsQt^#_}~Vgbpl@J7Ir`3rxK`|E*x zs=8Uw9;y(c0ca3`T6sNt&Q&4%;;8@&I<j)uX$^(_XNC?Mksy?{;qNmT5dHSN= zAFQgGZ^BN6QU{jy_AWi37w=&YjW%pt-!S|P1K{BLjSZv3AnCG6;om`H+d)UAA!*)P zHh{54*7*pmh~?Geh58}^{2s#K&^K8uw`XssL8TNkv{DAjQnda^k=T+nAIJ*F02iuC z%K{ePh1(Z~(_!mI%U)&;rz^UUJMt%w4y(eti6pQ555y%R6I^ zdCp=hFS+)TmGQ@-(dc6=vUK#=Xjer%oaqd_-}_0%0-c%g&C}B^Ppq*q=5c+eas8gu z^NGZ>oTqlLZ~QHL^f8CYYESmpRCce9XtxQ%(v_<(TaCX}OWB58&aU0h+b%!Q({tc* zgy@B&1^d!Bg(i47<-qBYex7`IHvm&=JN75g#jwLa`~OB}?+v05+P)Y5F%^jd&6WP& zDJ|T2SNu%;2eG>WENT?i;Ryb1{(cUt;=5x%z^%Ikp-_41)cmPaKRtCyi@!C+|I(rV zSd4{klf`1g?}C%zc(VA42*=6VhXZ)8T&_iyjZZ>u25p=k zJMo=Tv_)fqE=uv`1RNhQYk{f(w`qY2>b{52se!-o$>g8v!$n!RZ^!If$9tXYUdUt$ z<)M2lLZlWJ%~n;k$rV|fWQF?wZBmj|j?`N2Q69YG?*`Fja@4hDo$SRs)Ufe5`+mhy z6Gsg4=1MWzoD}R?Lv8sJnFso{i4_Qn$1VnX@)O!a-QA}?{&Du-z9;RqA;AvUbE8#q zv|$1KUsA~UugNE_ebpd(+FFw)hevzqIwMy+BnC z0iYR+ssVVS=#!SFF?fyzKe3`212l%T6M*L+HW{Ai1Vqnt_jGdF5q{ADV8p|_@9gSW zvTI^s%O;@msLKk^!Ct8`7JI4q!H)Q1F*-dwaAB?^)39Of=A}x7v1`kk4UHL;-+wwa z+UBz&N|G-(f>k!$+T42e4OeHFZ6~4pcD0##Q&qCN_q^tYy7~+D4_A=g_Z$A0 zkD!2eZe88iP-EGksv9gd4SlP(>curB-eeS_ZSMu8oM%)VN&yJB~Q_eSgMqw~KJ+$){QKq3*yDZ!?uU|}c!zSq6HwsyJOOG^pH z>JLHR*OcPKLVgY5*jef%MjSA#@6nHom(UazOyNj%dEusT3V{q?uo@qbe`d010A+#% ztKAj4?KZx>q3~L`x;o4sEw7eL56J7S#-~EA!Z-<~*h??oYXyUXAN~yg0j+82_aY10m~_R!vCb8e?9fj33+)D--h4*5UkH@FpWHlHh~^jg4dOYf zpxD;AeNd6y&_tLNdMIg370e|ZC=Y#NM!}?-6yWp^sUO~f4z5L0jWQ5M7FlMa7b<{n zL3ZJ!<;#*eXq!GENr?`zJ1WF>j1!m)z(KWGr4GM^TEHTqIY{VVP7-~6#^NgFD>WEr z_`_h(t05*CDFXiT(g*#M)ZPQ03768ruzrmqM__D*g4dL_fGi*$#5$`ZSEGoU0ay4zX)&L{aELpbL>`8-g0Z2zx zWQG=l+zi)ACF$}7y>Wl({drB)w|R_x{|RaCrG^Jm(2A0iO3L%Z9w8ye0- zIPCiK(HEFj`W*VQ@GYSS5!hPbAHD{2h;&H0E{QfEopm9r5-=`cYl?djO_H;wYhXr- zMxE!3?R3cx3^;E;;i>SRpzv=eycHfjamTR(!%MrnmkuBJ%Yl)u?(VLU1IG?77}0%y z@2=Kdt`*jF?AArayj~ks#6I2AHGJT&W5r@)e?2hV)ieKj%6_(-o}lN_H(}wuLQIcE z+@N!5WjO}~`dGHWcag>!pCz$87_}-F7G~1m0F@f<6`W>IH=@l$=}+FA@KMaA9`eU{ zbD;2mFCO>trG>}i&Gpfr{?t>^f-pZ%vqyW!8xliTO=T^{u5Ha77gk4h&hBqgjjiX0 z11p?^gU)q)rT=4JiZ{gr&GEvCNJF54e>$N3`n*d|ZZ<7D+S_z~op!AM;NdmKu7mA0 z{Z)r=yG<{qug`xGz9K}iK3C{S%Fsxph_`f|RqZ7+q<)1xKlXpD(-05Du!aja#2U2I zSKgA!vED{L+0a*Te((x58LloEA~5g&P`H}^Pc{EobhJHHxU;dZuaW(%@x*9#_{i_P z(Lzm4m@U&D4nyTuMz$@lKL{P%Hds#8fSOqWdS*B9N~g;%MHHR)mwlq_Q)Ty-eWmQ7 zvd7APTK3zrzcK}6Ujm`PvaE|OV;k6ZmS^K^j$O{KWH+$8*%#T@*%?H(dWOBoe#ZX9 z{sDD|nS0>vRKr{NGQNTD;S+q8ALsAmALh64&+yOlukkbd-}rO z7?C4?B>WiTHb+ag4~rrKv&dC4Xd$Q?3@IdZi7iQcb1A@$N8mT#f)vs{v>-!-n*#*} z)q}y80~re^vIMdrjWsrv1M%gPO&LZTTUjE1V(ov2E{TqJ?EBSt0c zhG0r4dthkU!{S+kC)bv1&EXR%LU;xFm_u+tFD?OeATE2r|D)x&pTI7ShsE>AaZe5{ z!dGQe9#|+M$T2c|FtMRe_K;z0HU|&cHhht;m_ZU3WV&U;)&qei_9EOyRi2#OhTcH= zoTm*sjVjbb{h1K3AEJBEBBDf*D@WZ(Pila^F@*vKU$zasjJ`!1bntJKK%bx~-c0d> zy16PvFUdy$5(e}iUCJ6@Pz`lZ8)C-Lo67<_Oz*Z#t_3wzq1zet3mS!9rtd(%;v7{Z z&^}0B(DC>hx(OgIA8sNKT7hrS4+4lW0~(V`S0yAjx)iHjT*h`QgJy5i=>qg0YQ(p; zw8q^TdNo9uW5D5Q0e6XBkr#-}Om;zdlkuFrmP3d}3_-A20Lg00A#z?((DQCGOU-Fe zG5F4GYaK%sWT9A;1+}KUXhnk54rpK|j<*hxMqEZL9rQa00cX@)_D1wPS`@WpZnRt^T);pdPEx{i)a-;4pv^2=Rg+Va{9@877z~C$zywrK z5BG?!7|=Ov@G|wlMy@+`VFss2A{;Z!uQ@%6xL55C9GZn@q;co_1aVe*%Av+iy@!EQCi9UBQ5heN~X{Y9*6_XCujy z14fks9Jb+d{RaW~vOujix(X*8K1k_RMYhTY$-te}mAlrtBt=H3E>Niga|Bcb7}9P5 zHiE!^At_v~v=**l_9*{a;Uw%sF}y^k@Da3dzXAt$#b&lEm2N;2t16cv?FA?T+WT-J z2+SMC0BgdX{5l8hc5tU2QQj=c^AxXGS*LhaQAk4Y3WpLV25y!87U@SArZUIq6fqGb zSO}VY;wn+F+r@~{1Ry``e^JTKS;EeE3}Yz8ZFS5hv9xj-AhjrTHg&y-YXf+EFdQXc0rq)|xf#<#Xvj`u3L)+SvkN9SlN|iZ9IU9#Z>a>zR<(^OH{svO6%O+p7Gi=W z$ObBms#xLWtIWU=wqvz1W9l+jP-1vO)h$(8@#>*5<20(jq*cTDX5T&&rvM^ZdTCN?1sSlJD zO!i2!Rr?8Nm3D(9Y2SeySLekZ5}t%j2idu0A;&Iz_qJ{V3I0jB)LLag#6xV|lp<*Z z2p!T1(B_-s{8DgD;JStnyf!vMNa`bF$AGodmLombiwmGT6IP$oUExo8fK2Iix+{Hn z`b0S8ig;YrYD8Fu@?(D)D^^rY%zu`^dQicln)tBY>-5Lqa>%uRu^Pi`drTIGV6n#3 zQ2EJ9yGK>4Oc6YHQJ(z>|0?t~{u_ z-B!s%H<^sqfWymJoy7rkr<-o;)2?SzeJ8XjcKw#zRAkC~h2IT#u&mpEg%_te;>RG6 zdN1Fl+n7bsVz`*4K@wqZfqHDsWspuI4fzeA)mwZ_IL{O|0bSx2Qw5w^)2fP7?Peq^ zOl*il7P@dAR#kY}nOMG*zbGFQuHff`_XAFXu3m>E3xp?hqj;$pT^A@mhf(_^1kZMZ z_Hm=bhwWJVB7L$!8t5OV`_$y3e)ci&`ZT_3b&MWewEQM^{%tj4LhP(DAedy%&PKw~ zo#RNedg*~(J6f~Z)*ZW^+r1-`&1QD&KA_#b=k(W4@7;^T9-)VD`vKrzj9#K6`Okj? z`FH;Z^0&1iKN783cGaHKd-j}ukPdpAzb!lfoQe~`TD!LFCK?|_NjJCx(B+M~+zte% zo+e8>l8Djpf%r^Mlgy6J={mW{&^eK^ppNx4QJqE7R+sJRR49?YAa(ULeFvRWKJvnW zPr$ioiSUyyD$5|u1xW8lS6Tzmql!u`7WarLqIRfJ)$a6TyYX4;tv-ALfXrWE>QHgl z#Fbhjh!30FypkN%-%{8ddDn%ty-gdNnl@fYho-UebbGp7Kd^`YzkTIf+xy0c{qIt9 z(55exmzq-yPl9bK3_WC?cTl;r73hiiFZ)p%Ku^jilehX;q}e6W3wCXa zRz-L0h+(ioZt^7LYrAw$%F>u4eoY^v#eoWTo%kwZt%@9$Ck9@d7B`GJ{ZD87Fu>jV zikQk0Y7!W1>MV>?il^b@r;V@)f-)GD^`J(LQD?#;IYE5& zWYc{nkEB#MC4=3FjSuVp>tB;H!pgG!WlutM*JRH2h`t_3?d2Zcq}q%=NK7JPE+QgI zi%pF6fTj`8Uh~)x>IBeXLX%~2F;l`ONNGVfS}jgbxu?y)$&0w}U>sx#J2BWAgwe(0 zg3*Dn*ow#xKCjn{u&P!oApJnrfz*K074m?VVTu|vs(zp9F`Ixkh&30HrJ*&qfLoaV zCq&Lg2_s6NBjJ+<3f*aq#zG!nz~}e5eTX>;8b>f$T|&xg2Cg{pJZx6CFXHP8?DE4+ z64K zpx@3XX?i7zD)PJ=7S@qwvM$v z>xKzl8%*(lzJUTEgmOhS#r5i8w43NMzb;RHd%BEltVq|Ggvl>2yA<@%(xo7jUR_9l zuK11SF8&v83co$ps{kj{{`3ulv?|R2}f&9ZD zrT&B~D0V68+~h(ZdSYi&XzOTkQy%>@8AZ`%est=hy}9=G+}?|RvTqM1_Uy~!C3#0r zjCu%cod=J7>{yT+v}dPaJulG9Sq;epwY?kt=D*D3MilHt)*t|mB?s|n?E z)xiV$zI#UaGiY7nD5^l4rGdUr4%0rwcLCs77)i_sgxH0`9U&!>x_A@4opU*{>!zxN zpFrGT)cUk#E(=s|CWNol1haO2m@wR+dSuU@WP}}b|Zq%Hys%HRYV|vO60Bw8W3UOPD;d}!RdKgq%5EsbS;u`ZfbQyiH6sQAb zj(&YxR8pwgh?ad5#hxJl{;Y1q1UCbw9bK5lx{;$kpJxXL+LtV89~k_vg~Y70@`V@h zw_sJNljWGYu(K4#Iw|MSzK+h$j(tN^q_c47`;`Ct=uTRkV3&F?SsyWUCX9T1!kLD` z%i7-?2%eaqY|zSBpk8}W2VA24{biv{sDRA|S>l0+0sjKajZC(RW&!2_C>XLTV*@pw;2&tc3Tg>hc1F-C~!q!`d!`G*L8F z)WmH*W0m%^>YR|>l;f@Z7Zp}>Dl)c-l%qDE3UzO|t~_D4+Tb?q@y9D_&5BfKk9xx) zi_6m5eX#IHmboCy)0=_#pzGoOS-2NIR6eXjfO2!4o5W~6Sr9CBT3b;AFbJLjx@8-f>a+OqfX z{)=**owJhtuf*xM>-^H9Sl`|BJq^+F(6bRosmm5U@$e`BX+mbFhem z0V>cDu!H0PYhAQPqE)r10Dwlwqg%6*f0IzJJ*Pd#>i_!Jzy0kRd*i`f)o%ADPy~TQ zTveB;w$*+3`an~a-(qy6KXLE9d{5y=*Imc{T=>@U<2IYa-$JliY$Jbmi8iCnEMXVCDIdmVj`5#$ zXouN#9om-`QxY4fhe0F0kho1^EGYm3 z5%(3qZfqlS$~O3c5L6$OnZ?oI=D+iM9zEl4tM^FBPrJ;H>d=q(nGu4(yzj@M zYKPhN>7?ZG2DH~?!*@+y$knU4>0TKw9;V;eRgo_hHTo_-_lP(v&%=UYe3j*0m5wVz5h%!O)gR6#QyW%Ry z+*QLha&cKe-#&rZmP>V-r4R4x?bfTel`yzKzk%HI09yuQ4gE=mZn(l;2W&D?B?uco zT8zOsddcB|y}6E#+}?p#V6q1C>Qw*Fa~u=46uFC zK*6T{QTwCfu`3KI#qPl;q^>yE{)kVzhd-<*Y+hOW17)_;uoG%s+vI_#YOiq%tcmltJmmMS|Zi3`~VIi>@!5R#o`ji3D8gM+9 z7E0N6QT|=U{DmL9C0nrwEfsjDXTZa*(D`*>{QVzDW^dY@$lHzixVU@Erpw}$mGR3q zZFykxrpprexop$sJ!1>PqGuNp-}vdq53|;dJ%Cl*wE2N88!wM1klaY6kQ7#ui0MBT zWKDXaaQqc20)c56y@Rnh;(BqEy23Dy_6QX3A^*UQku|pE54nGo z(uOiObClAivTZC`N~>j6?AWsD{J?B}D7yb>bZl^PVt8_5c6{LI+*kvhU63D{8y}cH zci~)WTYh?GY;q!+ZfrhxaaDdIKfO@h%*7)uv$Mm|;pxdk(Uqt-KR!MgotmCJkRP0F z9G#t=>TGJF@1yIDgOi8QA=7Y|8URQ}9-*3}VBL@6I0l!XNrVj@){nD*HyyzBIb3fz zd+!327{N8VH~qFb-mcU(l$r)8$CzGo6lU;^m?&?Ta}{z<=(*qAx*34IkHE}n7Qe%2 z?J#PbL`aM%0#8$`=~>3{JBce(`n?0VGKlMqWutnjDHswp;dkNr7Vwc44=ssmSL^1x@p7q*Uma%KDq=JI7_i>^{`&n z$NJeaww$eCE7>Zxnyq1L*?H`IwvMf58`ws+iCw@pvn^~Z+XjoB9l+7u#dfnjY%jZz zUBvdW0k)qFvLV>=46_k7%Es6MxCD)}Lu`UgvMF|$O|uy`3p<~S*%9FJ9%YxZW9%|m z{Tv69=Sg-7n7~)S0_ZAsHG3~Sk^hOkpM8K`!>(l?WY@9l*@xJNVIA}l_EB~t`xyH; z`vkj*-OO%bx3W*N+Yr^`Q@~iio!!CiWS?Po!HVd!>~riM_IY+M`vNSAzQpchUuO5S zuduJOudxSUVe}yT278EolReD-nLPq~qet0e?C~-&KQxjT$MXZjhT+Naq5QO3{Aie* z%1=lmW3&0Z0msp~{mRhT%)tKf{E&EPa&kh-Pft%y%QJI>gZY^m4m9G@IK zDCCdkE%rEEQ&~j`08oXC=RpwRcU-| zWOP)=7#p`t z=ZEG7^9_Sz(`bz{J3TNlGn~h><)<$m8_X*MLqlWqZ0gM1e%u_Sv|(m^44oxSO^;2? z8uFJ+O-|2>gOlSk>dfGDK0nbgJU2dWEv2XNpp(;iBdswFqXXl^COtJXi8@3|8V9kM zOpQ)Xw-PjzMr3+7P6cz$@+I5RPMWO#f4okZ_KoS2-=8)oto zW0TWoYe>tbxs`9#98q zOw5d-s=T6q$>8)+Q}Npljg6ztbJG{+kBU?Ux@d4fe=kFm<5>FTp|OEOlM_RR>HO^6 z^aQG+8jHh@29t%prvZJ9CmI+R>6?r*vjfw`9O$cy#fkhSvxd2;@yUT9wfNC6G(9jP zQnwp0e)A3cjadDs@X{t`jl&pZdSRIgj7^LfOP>vC3F8OHsR5J}(Je=%i!pR2WenUQ zbe44SB=zddR32|++DJRgOv6xq+*C}B&K_Dw(zq}eug=U)Pfm;&<|fARish-XK|Cd9 zF;2|qI;dg4c>uF%qG1p%#KbP1=;OguOw(|Xi#5)bKF7q_f&DXv;#`oX@hp?l%;*4W z&tn!C(6Bs)OMU{QGjGN?q*tVmcu7BzP#P~6?=^2J^;)qiRUZblX=5DB&5n)B=n2fl z8I^i_Vea8YOro2{ReILaMd=6%O^ZV~N+_eRP}E2I%7H~`0JCB)Z#_GO@ERua;_&43 zA(38_X?A*SU}6OCYx-Pr2m>AsKV+hJQ*59Wb&nltz)~?mug+dPEj|O)Bf!%`8rY8} ztHoRTq!1}TpPMojD?#yDg{r0n4&N~_Jvb^4Pmkp%hGwJ@Jlm9MIzKgjRKIULl%JT> zQ?^AfjaqLmy;1#91Uw&J?aVCZBo@n=yzN}0^$dLSpg5WzpAuf#@Q6HWa dX;j-59%`XS2gfI8@+SRQY{}%o(yg+x{|EK~lo0>` literal 46684 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 NqtXTTr(IH0bTL$Q#&Rt$( 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 WEo6sg2$g9lKpdZ$$_>);_x}MD5#CJz diff --git a/public/static/system/layui/font/iconfont.svg b/public/static/system/layui/font/iconfont.svg index 999ca1f..4f1920d 100644 --- a/public/static/system/layui/font/iconfont.svg +++ b/public/static/system/layui/font/iconfont.svg @@ -1,554 +1,405 @@ - - - -Created by iconfont - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + Created by iconfont + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/public/static/system/layui/font/iconfont.ttf b/public/static/system/layui/font/iconfont.ttf index 06e30f9e2a856cbfefff25111ceb4b9c034f35fd..6e84a89e031247509801ae5d65cc8d20323cb766 100644 GIT binary patch literal 53996 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 literal 46508 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 H6c%@&y~x6W literal 30628 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

_X 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.timeout/4?g(u+" is not a valid module","error"):void(m.status[u]?c():setTimeout(r,4))}())}function c(){e.push(layui[u]),11e3*m.timeout/4?g(u+" is not a valid module","error"):void("string"==typeof m.modules[u]&&m.status[u]?c():setTimeout(f,4))}():((p=h.createElement("script"))["async"]=!0,p.charset="utf-8",p.src=y+((i=!0===m.version?m.v||(new Date).getTime():m.version||"")?"?v="+i:""),a.appendChild(p),!p.attachEvent||p.attachEvent.toString&&p.attachEvent.toString().indexOf("[native code")<0||b?p.addEventListener("load",function(t){s(t,y)},!1):p.attachEvent("onreadystatechange",function(t){s(t,y)}),m.modules[u]=y),n},r.prototype.disuse=function(t){var o=this;return t=o.isArray(t)?t:[t],o.each(t,function(t,e){m.status[e],delete o[e],delete N[e],delete o.modules[e],delete m.status[e],delete m.modules[e]}),o},r.prototype.getStyle=function(t,e){t=t.currentStyle||d.getComputedStyle(t,null);return t[t.getPropertyValue?"getPropertyValue":"getAttribute"](e)},r.prototype.link=function(o,r,t){var n=this,e=h.getElementsByTagName("head")[0],i=h.createElement("link"),t=((t="string"==typeof r?r:t)||o).replace(/\.|\//g,""),a=i.id="layuicss-"+t,u="creating",l=0;return i.rel="stylesheet",i.href=o+(m.debug?"?v="+(new Date).getTime():""),i.media="all",h.getElementById(a)||e.appendChild(i),"function"!=typeof r||function s(t){var e=h.getElementById(a);return++l>1e3*m.timeout/100?g(o+" timeout"):void(1989===parseInt(n.getStyle(e,"width"))?(t===u&&e.removeAttribute("lay-status"),e.getAttribute("lay-status")===u?setTimeout(s,100):r()):(e.setAttribute("lay-status",u),setTimeout(function(){s(u)},100)))}(),n},r.prototype.addcss=function(t,e,o){return layui.link(m.dir+"css/"+t,e,o)},m.callback={},r.prototype.factory=function(t){if(layui[t])return"function"==typeof m.callback[t]?m.callback[t]:null},r.prototype.img=function(t,e,o){var r=new Image;if(r.src=t,r.complete)return e(r);r.onload=function(){r.onload=null,"function"==typeof e&&e(r)},r.onerror=function(t){r.onerror=null,"function"==typeof o&&o(t)}},r.prototype.config=function(t){for(var e in t=t||{})m[e]=t[e];return this},r.prototype.modules=function(){var t,e={};for(t in N)e[t]=N[t];return e}(),r.prototype.extend=function(t){for(var e in t=t||{})this[e]||this.modules[e]?g(e+" Module already exists","error"):this.modules[e]=t[e];return this},r.prototype.router=r.prototype.hash=function(t){var o={path:[],search:{},hash:((t=t||location.hash).match(/[^#](#.*$)/)||[])[1]||""};return/^#\//.test(t)&&(t=t.replace(/^#\//,""),o.href="/"+t,t=t.replace(/([^#])(#.*$)/,"$1").split("/")||[],this.each(t,function(t,e){/^\w+=/.test(e)?(e=e.split("="),o.search[e[0]]=e[1]):o.path.push(e)})),o},r.prototype.url=function(t){var n,e,o=this;return{pathname:(t?((t.match(/\.[^.]+?\/.+/)||[])[0]||"").replace(/^[^\/]+/,"").replace(/\?.+/,""):location.pathname).replace(/^\//,"").split("/"),search:(n={},e=(t?((t.match(/\?.+/)||[])[0]||"").replace(/\#.+/,""):location.search).replace(/^\?+/,"").split("&"),o.each(e,function(t,e){var o=e.indexOf("="),r=o<0?e.substr(0,e.length):0!==o&&e.substr(0,o);r&&(n[r]=0(l.innerHeight||f.documentElement.clientHeight)},h.position=function(t,e,n){var o,i,r,c,u,a,s;e&&(n=n||{},t!==f&&t!==h("body")[0]||(n.clickType="right"),u="right"===n.clickType?{left:(u=n.e||l.event||{}).clientX,top:u.clientY,right:u.clientX,bottom:u.clientY}:t.getBoundingClientRect(),a=e.offsetWidth,s=e.offsetHeight,o=function(t){return f.body[t=t?"scrollLeft":"scrollTop"]|f.documentElement[t]},r=u.left,c=u.bottom,"center"===n.align?r-=(a-t.offsetWidth)/2:"right"===n.align&&(r=r-a+t.offsetWidth),(r=r+a+5>(i=function(t){return f.documentElement[t?"clientWidth":"clientHeight"]})("width")?i("width")-a-5:r)<5&&(r=5),c+s+5>i()&&(u.top>s+5?c=u.top-s-10:"right"===n.clickType?(c=i()-s-10)<0&&(c=0):c=5),(a=n.position)&&(e.style.position=a),e.style.left=r+("fixed"===a?0:o(1))+"px",e.style.top=c+("fixed"===a?0:o())+"px",h.hasScrollbar()||(s=e.getBoundingClientRect(),!n.SYSTEM_RELOAD&&s.bottom+5>i()&&(n.SYSTEM_RELOAD=!0,setTimeout(function(){h.position(t,e,n)},50))))},h.options=function(t,e){t=h(t),e=e||"lay-options";try{return new Function("return "+(t.attr(e)||"{}"))()}catch(n){return hint.error("parseerror\uff1a"+n,"error"),{}}},h.isTopElem=function(n){var t=[f,h("body")[0]],o=!1;return h.each(t,function(t,e){if(e===n)return o=!0}),o},i.addStr=function(n,t){return n=n.replace(/\s+/," "),t=t.replace(/\s+/," ").split(" "),h.each(t,function(t,e){new RegExp("\\b"+e+"\\b").test(n)||(n=n+" "+e)}),n.replace(/^\s|\s$/,"")},i.removeStr=function(n,t){return n=n.replace(/\s+/," "),t=t.replace(/\s+/," ").split(" "),h.each(t,function(t,e){e=new RegExp("\\b"+e+"\\b");e.test(n)&&(n=n.replace(e,""))}),n.replace(/\s+/," ").replace(/^\s|\s$/,"")},i.prototype.find=function(o){var i=this,r=0,c=[],u="object"==typeof o;return this.each(function(t,e){for(var n=u?e.contains(o):e.querySelectorAll(o||null);r]|&(?=#[a-zA-Z0-9]+)/g.test(e+="")?e.replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,"""):e},error:function(e,r){var n="Laytpl Error: ";return"object"==typeof console&&console.error(n+e+"\n"+(r||"")),n+e}},l=a.exp,r=function(e){this.tpl=e},n=(r.pt=r.prototype,window.errors=0,r.pt.parse=function(e,r){var n=e,c=l("^"+p.open+"#",""),t=l(p.close+"$","");e='"use strict";var view = "'+(e=e.replace(/\s+|\r|\t|\n/g," ").replace(l(p.open+"#"),p.open+"# ").replace(l(p.close+"}"),"} "+p.close).replace(/\\/g,"\\\\").replace(l(p.open+"!(.+?)!"+p.close),function(e){return e=e.replace(l("^"+p.open+"!"),"").replace(l("!"+p.close),"").replace(l(p.open+"|"+p.close),function(e){return e.replace(/(.)/g,"\\$1")})}).replace(/(?="|')/g,"\\").replace(a.query(),function(e){return'";'+(e=e.replace(c,"").replace(t,"")).replace(/\\(.)/g,"$1")+';view+="'}).replace(a.query(1),function(e){var r='"+laytpl.escape(';return e.replace(/\s/g,"")===p.open+p.close?"":(e=e.replace(l(p.open+"|"+p.close),""),/^=/.test(e)?e=e.replace(/^=/,""):/^-/.test(e)&&(e=e.replace(/^-/,""),r='"+('),r+e.replace(/\\(.)/g,"$1")+')+"')}))+'";return view;';try{return this.cache=e=new Function("d, laytpl",e),e(r,a)}catch(o){return delete this.cache,a.error(o,n)}},r.pt.render=function(e,r){var n=this;return e?(e=n.cache?n.cache(e,a):n.parse(n.tpl,e),r?void r(e):e):a.error("no data")},function(e){return"string"!=typeof e?a.error("Template not found"):new r(e)});n.config=function(e){for(var r in e=e||{})p[r]=e[r]},n.v="1.2.0",e("laytpl",n)});layui.define(function(e){"use strict";var n=document,u="getElementById",c="getElementsByTagName",a="layui-disabled",t=function(e){var a=this;a.config=e||{},a.config.index=++o.index,a.render(!0)},o=(t.prototype.type=function(){var e=this.config;if("object"==typeof e.elem)return e.elem.length===undefined?2:3},t.prototype.view=function(){var t,i,r=this.config,n=r.groups="groups"in r?Number(r.groups)||0:5,u=(r.layout="object"==typeof r.layout?r.layout:["prev","page","next"],r.count=Number(r.count)||0,r.curr=Number(r.curr)||1,r.limits="object"==typeof r.limits?r.limits:[10,20,30,40,50],r.limit=Number(r.limit)||10,r.pages=Math.ceil(r.count/r.limit)||1,r.curr>r.pages?r.curr=r.pages:r.curr<1&&(r.curr=1),n<0?n=1:n>r.pages&&(n=r.pages),r.prev="prev"in r?r.prev:"上一页",r.next="next"in r?r.next:"下一页",r.pages>n?Math.ceil((r.curr+(1'+r.prev+"":"",page:function(){var e=[];if(r.count<1)return"";1'+(r.first||1)+"");var a=Math.floor((n-1)/2),t=1r.pages?r.pages:a:n;for(i-t…');t<=i;t++)t===r.curr?e.push('"+t+""):e.push(''+t+"");return r.pages>n&&r.pages>i&&!1!==r.last&&(i+1…'),0!==n&&e.push(''+(r.last||r.pages)+"")),e.join("")}(),next:r.next?''+r.next+"":"",count:'\u5171 '+r.count+" \u6761",limit:(t=['"),refresh:['','',""].join(""),skip:['到第','','页',""].join("")};return['
',(i=[],layui.each(r.layout,function(e,a){s[a]&&i.push(s[a])}),i.join("")),"
"].join("")},t.prototype.jump=function(e,a){if(e){var t=this,i=t.config,r=e.children,n=e[c]("button")[0],u=e[c]("input")[0],e=e[c]("select")[0],s=function(){var e=Number(u.value.replace(/\s|\D/g,""));e&&(i.curr=e,t.render())};if(a)return s();for(var l=0,p=r.length;li.pages||(i.curr=e,t.render())});e&&o.on(e,"change",function(){var e=this.value;i.curr*e>i.count&&(i.curr=Math.ceil(i.count/e)),i.limit=e,t.render()}),n&&o.on(n,"click",function(){s()})}},t.prototype.skip=function(t){var i,e;t&&(i=this,(e=t[c]("input")[0])&&o.on(e,"keyup",function(e){var a=this.value,e=e.keyCode;/^(37|38|39|40)$/.test(e)||(/\D/.test(a)&&(this.value=a.replace(/\D/,"")),13===e&&i.jump(t,!0))}))},t.prototype.render=function(e){var a=this,t=a.config,i=a.type(),r=a.view(),i=(2===i?t.elem&&(t.elem.innerHTML=r):3===i?t.elem.html(r):n[u](t.elem)&&(n[u](t.elem).innerHTML=r),t.jump&&t.jump(t,e),n[u]("layui-laypage-"+t.index));a.jump(i),t.hash&&!e&&(location.hash="!"+t.hash+"="+t.curr),a.skip(i)},{render:function(e){return new t(e).index},index:layui.laypage?layui.laypage.index+1e4:0,on:function(a,e,t){return a.attachEvent?a.attachEvent("on"+e,function(e){e.target=e.srcElement,t.call(a,e)}):a.addEventListener(e,t,!1),this}});e("laypage",o)});!function(i,r){"use strict";var n=i.layui&&layui.define,l={getPath:i.lay&&lay.getPath?lay.getPath:"",link:function(e,t,a){u.path&&i.lay&&lay.layui&&lay.layui.link(u.path+e,t,a)}},e=i.LAYUI_GLOBAL||{},u={v:"5.3.1",config:{weekStart:0},index:i.laydate&&i.laydate.v?1e5:0,path:e.laydate_dir||l.getPath,set:function(e){var t=this;return t.config=lay.extend({},t.config,e),t},ready:function(e){var t="laydate",a=(n?"modules/laydate/":"theme/")+"default/laydate.css?v="+u.v;return n?layui.addcss(a,e,t):l.link(a,e,t),this}},s=function(){var t=this,e=t.config.id;return{hint:function(e){t.hint.call(t,e)},config:(s.that[e]=t).config}},a="laydate",w="layui-this",x="laydate-disabled",h=[100,2e5],p="layui-laydate-static",M="layui-laydate-list",o="layui-laydate-hint",E=".laydate-btns-confirm",C="laydate-time-text",k="laydate-btns-time",f="layui-laydate-preview",g=function(e){var t=this,a=(t.index=++u.index,t.config=lay.extend({},t.config,u.config,e),lay(e.elem||t.config.elem));if(1\u8bf7\u91cd\u65b0\u9009\u62e9",invalidDate:"\u4e0d\u5728\u6709\u6548\u65e5\u671f\u6216\u65f6\u95f4\u8303\u56f4\u5185",formatError:["\u65e5\u671f\u683c\u5f0f\u4e0d\u5408\u6cd5
\u5fc5\u987b\u9075\u5faa\u4e0b\u8ff0\u683c\u5f0f\uff1a
","
\u5df2\u4e3a\u4f60\u91cd\u7f6e"],preview:"\u5f53\u524d\u9009\u4e2d\u7684\u7ed3\u679c"},en:{weeks:["Su","Mo","Tu","We","Th","Fr","Sa"],time:["Hours","Minutes","Seconds"],timeTips:"Select Time",startTime:"Start Time",endTime:"End Time",dateTips:"Select Date",month:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],tools:{confirm:"Confirm",clear:"Clear",now:"Now"},timeout:"End time cannot be less than start Time
Please re-select",invalidDate:"Invalid date",formatError:["The date format error
Must be followed\uff1a
","
It has been reset"],preview:"The selected result"}};return e[this.config.lang]||e.cn},g.prototype.init=function(){var r=this,o=r.config,e="static"===o.position,t={year:"yyyy",month:"yyyy-MM",date:"yyyy-MM-dd",time:"HH:mm:ss",datetime:"yyyy-MM-dd HH:mm:ss"};o.elem=lay(o.elem),o.eventElem=lay(o.eventElem),o.elem[0]&&(r.rangeStr=o.range?"string"==typeof o.range?o.range:"-":"","array"===layui.type(o.range)&&(r.rangeElem=[lay(o.range[0]),lay(o.range[1])]),t[o.type]||(i.console&&console.error&&console.error("laydate type error:'"+o.type+"' is not supported"),o.type="date"),o.format===t.date&&(o.format=t[o.type]||t.date),r.format=s.formatArr(o.format),o.weekStart&&!/^[0-6]$/.test(o.weekStart)&&(t=r.lang(),o.weekStart=t.weeks.indexOf(o.weekStart),-1===o.weekStart&&(o.weekStart=0)),r.EXP_IF="",r.EXP_SPLIT="",lay.each(r.format,function(e,t){e=new RegExp(y).test(t)?"\\d{"+(new RegExp(y).test(r.format[0===e?e+1:e-1]||"")?/^yyyy|y$/.test(t)?4:t.length:/^yyyy$/.test(t)?"1,4":/^y$/.test(t)?"1,308":"1,2")+"}":"\\"+t;r.EXP_IF=r.EXP_IF+e,r.EXP_SPLIT=r.EXP_SPLIT+"("+e+")"}),r.EXP_IF_ONE=new RegExp("^"+r.EXP_IF+"$"),r.EXP_IF=new RegExp("^"+(o.range?r.EXP_IF+"\\s\\"+r.rangeStr+"\\s"+r.EXP_IF:r.EXP_IF)+"$"),r.EXP_SPLIT=new RegExp("^"+r.EXP_SPLIT+"$",""),r.isInput(o.elem[0])||"focus"===o.trigger&&(o.trigger="click"),o.elem.attr("lay-key")||(o.elem.attr("lay-key",r.index),o.eventElem.attr("lay-key",r.index)),o.mark=lay.extend({},o.calendar&&"cn"===o.lang?{"0-1-1":"\u5143\u65e6","0-2-14":"\u60c5\u4eba","0-3-8":"\u5987\u5973","0-3-12":"\u690d\u6811","0-4-1":"\u611a\u4eba","0-5-1":"\u52b3\u52a8","0-5-4":"\u9752\u5e74","0-6-1":"\u513f\u7ae5","0-9-10":"\u6559\u5e08","0-10-1":"\u56fd\u5e86","0-12-25":"\u5723\u8bde"}:{},o.mark),lay.each(["min","max"],function(e,t){var a,n,i=[],l=[];l="number"==typeof o[t]?(n=o[t],a=new Date,a=r.newDate({year:a.getFullYear(),month:a.getMonth(),date:a.getDate(),hours:"23",minutes:"59",seconds:"59"}).getTime(),i=[(n=new Date(n?n<864e5?a+864e5*n:n:a)).getFullYear(),n.getMonth()+1,n.getDate()],[n.getHours(),n.getMinutes(),n.getSeconds()]):(i=(o[t].match(/\d+-\d+-\d+/)||[""])[0].split("-"),(o[t].match(/\d+:\d+:\d+/)||[""])[0].split(":")),o[t]={year:0|i[0]||(new Date).getFullYear(),month:i[1]?(0|i[1])-1:(new Date).getMonth(),date:0|i[2]||(new Date).getDate(),hours:0|l[0],minutes:0|l[1],seconds:0|l[2]}}),r.elemID="layui-laydate"+o.elem.attr("lay-key"),(o.show||e)&&r.render(),e||r.events(),o.value&&o.isInitValue&&("date"===layui.type(o.value)?r.setValue(r.parse(0,r.systemDate(o.value))):r.setValue(o.value)))},g.prototype.render=function(){var n,e,t=this,o=t.config,s=t.lang(),i="static"===o.position,a=t.elem=lay.elem("div",{id:t.elemID,"class":["layui-laydate",o.range?" layui-laydate-range":"",i?" "+p:"",o.theme&&"default"!==o.theme&&!/^#/.test(o.theme)?" laydate-theme-"+o.theme:""].join("")}),y=t.elemMain=[],d=t.elemHeader=[],m=t.elemCont=[],c=t.table=[],l=t.footer=lay.elem("div",{"class":"layui-laydate-footer"});o.zIndex&&(a.style.zIndex=o.zIndex),lay.each(new Array(2),function(e){if(!o.range&&0'+s.timeTips+""),!o.range&&"datetime"===o.type||e.push(''),lay.each(o.btns,function(e,t){var a=s.tools[t]||"btn";o.range&&"now"===t||(i&&"clear"===t&&(a="cn"===o.lang?"\u91cd\u7f6e":"Reset"),n.push(''+a+""))}),e.push('"),e.join(""))),lay.each(y,function(e,t){a.appendChild(t)}),o.showBottom&&a.appendChild(l),/^#/.test(o.theme)&&(e=lay.elem("style"),l=["#{{id}} .layui-laydate-header{background-color:{{theme}};}","#{{id}} .layui-this{background-color:{{theme}} !important;}"].join("").replace(/{{id}}/g,t.elemID).replace(/{{theme}}/g,o.theme),"styleSheet"in e?(e.setAttribute("type","text/css"),e.styleSheet.cssText=l):e.innerHTML=l,lay(a).addClass("laydate-theme-molv"),a.appendChild(e)),t.remove(g.thisElemDate),u.thisId=o.id,i?o.elem.append(a):(r.body.appendChild(a),t.position()),t.checkDate().calendar(null,0,"init"),t.changeEvent(),g.thisElemDate=t.elemID,"function"==typeof o.ready&&o.ready(lay.extend({},o.dateTime,{month:o.dateTime.month+1})),t.preview()},g.prototype.remove=function(e){var t=this,a=t.config,n=lay("#"+(e||t.elemID));return n[0]&&(n.hasClass(p)||t.checkDate(function(){n.remove(),delete u.thisId,"function"==typeof a.close&&a.close(t)})),t},g.prototype.position=function(){var e=this.config;return lay.position(this.bindElem||e.elem[0],this.elem,{position:e.position}),this},g.prototype.hint=function(e){var t=this,a=(t.config,lay.elem("div",{"class":o}));t.elem&&(a.innerHTML=e||"",lay(t.elem).find("."+o).remove(),t.elem.appendChild(a),clearTimeout(t.hinTimer),t.hinTimer=setTimeout(function(){lay(t.elem).find("."+o).remove()},3e3))},g.prototype.getAsYM=function(e,t,a){return a?t--:t++,t<0&&(t=11,e--),11h[1]&&(e.year=h[1],o=!0),11t&&(e.date=t,o=!0)},r=function(n,i,l){var r=["startTime","endTime"];i=(i.match(s.EXP_SPLIT)||[]).slice(1),l=l||0,y.range&&(s[r[l]]=s[r[l]]||{}),lay.each(s.format,function(e,t){var a=parseFloat(i[e]);i[e].lengths.getDateTime(y.max)?n=y.dateTime=lay.extend({},y.max):s.getDateTime(n)s.getDateTime(y.max))&&(s.endDate=lay.extend({},y.max)),s.startTime={hours:y.dateTime.hours,minutes:y.dateTime.minutes,seconds:y.dateTime.seconds},s.endTime={hours:s.endDate.hours,minutes:s.endDate.minutes,seconds:s.endDate.seconds}),e&&e(),s},g.prototype.mark=function(e,a){var n,t=this.config;return lay.each(t.mark,function(e,t){e=e.split("-");e[0]!=a[0]&&0!=e[0]||e[1]!=a[1]&&0!=e[1]||e[2]!=a[2]||(n=t||a[2])}),n&&e.html(''+n+""),this},g.prototype.holidays=function(n,i){var e=this.config,l=["","work"];return"array"!==layui.type(e.holidays)||lay.each(e.holidays,function(a,e){lay.each(e,function(e,t){t===n.attr("lay-ymd")&&n.html('"+i[2]+"")})}),this},g.prototype.limit=function(e,t,a,i){var l=this,n=l.config,r={},a=(i?0:41)r.max,e&&e[t?"addClass":"removeClass"](x),t},g.prototype.thisDateTime=function(e){var t=this.config;return e?this.endDate:t.dateTime},g.prototype.calendar=function(e,t,a){var i,l,r,o=this,n=o.config,t=t?1:0,s=e||o.thisDateTime(t),y=new Date,d=o.lang(),m="date"!==n.type&&"datetime"!==n.type,c=lay(o.table[t]).find("td"),t=lay(o.elemHeader[t][2]).find("span");return s.yearh[1]&&(s.year=h[1],o.hint(d.invalidDate)),o.firstDate||(o.firstDate=lay.extend({},s)),y.setFullYear(s.year,s.month,1),i=(y.getDay()+(7-n.weekStart))%7,l=u.getEndDate(s.month||12,s.year),r=u.getEndDate(s.month+1,s.year),lay.each(c,function(e,t){var a=[s.year,s.month],n=0;(t=lay(t)).removeAttr("class"),e"+d.time[t]+"

    "];lay.each(new Array(e),function(e){n.push(""+lay.digit(e,2)+"")}),a.innerHTML=n.join("")+"
",m.appendChild(a)}),l()),p&&h.removeChild(p),h.appendChild(m),"year"===t||"month"===t?(lay(o.elemMain[n]).addClass("laydate-ym-show"),lay(m).find("li").on("click",function(){var e=0|lay(this).attr("lay-ym");lay(this).hasClass(x)||(0===n?(y[t]=e,o.limit(lay(o.footer).find(E),null,0)):o.endDate[t]=e,"year"===s.type||"month"===s.type?(lay(m).find("."+w).removeClass(w),lay(this).addClass(w),"month"===s.type&&"year"===t&&(o.listYM[n][0]=e,a&&((n?o.endDate:y).year=e),o.list("month",n))):(o.checkDate("limit").calendar(null,n),o.closeList()),o.setBtnStatus(),s.range||("month"===s.type&&"month"===t||"year"===s.type&&"year"===t)&&o.setValue(o.parse()).remove().done(),o.done(null,"change"),lay(o.footer).find("."+k).removeClass(x))})):(e=lay.elem("span",{"class":C}),r=function(){lay(m).find("ol").each(function(e){var a=this,t=lay(a).find("li");a.scrollTop=30*(o[D][T[e]]-2),a.scrollTop<=0&&t.each(function(e,t){if(!lay(this).hasClass(x))return a.scrollTop=30*(e-2),!0})})},u=lay(c[2]).find("."+C),r(),e.innerHTML=s.range?[d.startTime,d.endTime][n]:d.timeTips,lay(o.elemMain[n]).addClass("laydate-time-show"),u[0]&&u.remove(),c[2].appendChild(e),lay(m).find("ol").each(function(t){var a=this;lay(a).find("li").on("click",function(){var e=0|this.innerHTML;lay(this).hasClass(x)||(s.range?o[D][T[t]]=e:y[T[t]]=e,lay(a).find("."+w).removeClass(w),lay(this).addClass(w),l(),r(),!o.endDate&&"time"!==s.type||o.done(null,"change"),o.setBtnStatus())})})),o},g.prototype.listYM=[],g.prototype.closeList=function(){var a=this;a.config;lay.each(a.elemCont,function(e,t){lay(this).find("."+M).remove(),lay(a.elemMain[e]).removeClass("laydate-ym-show laydate-time-show")}),lay(a.elem).find("."+C).remove()},g.prototype.setBtnStatus=function(e,t,a){var n=this,i=n.config,l=n.lang(),r=lay(n.footer).find(E);i.range&&"time"!==i.type&&(t=t||i.dateTime,a=a||n.endDate,i=n.newDate(t).getTime()>n.newDate(a).getTime(),n.limit(null,t)||n.limit(null,a)?r.addClass(x):r[i?"addClass":"removeClass"](x),e&&i&&n.hint("string"==typeof e?l.timeout.replace(/\u65e5\u671f/g,e):l.timeout))},g.prototype.parse=function(e,t){var a=this,n=a.config,t=t||("end"==e?lay.extend({},a.endDate,a.endTime):n.range?lay.extend({},n.dateTime,a.startTime):n.dateTime),t=u.parse(t,a.format,1);return n.range&&e===undefined?t+" "+a.rangeStr+" "+a.parse("end"):t},g.prototype.newDate=function(e){return e=e||{},new Date(e.year||1,e.month||0,e.date||1,e.hours||0,e.minutes||0,e.seconds||0)},g.prototype.getDateTime=function(e){return this.newDate(e).getTime()},g.prototype.setValue=function(e){var t=this,a=t.config,n=t.bindElem||a.elem[0];return"static"===a.position||(e=e||"",t.isInput(n)?lay(n).val(e):(a=t.rangeElem)?("array"!==layui.type(e)&&(e=e.split(" "+t.rangeStr+" ")),a[0].val(e[0]||""),a[1].val(e[1]||"")):(0===lay(n).find("*").length&&lay(n).html(e),lay(n).attr("lay-date",e))),t},g.prototype.preview=function(){var e,t=this,a=t.config;a.isPreview&&(e=lay(t.elem).find("."+f),a=!a.range||t.endDate?t.parse():"",e.html(a).css({color:"#5FB878"}),setTimeout(function(){e.css({color:"#666"})},300))},g.prototype.done=function(e,t){var a=this,n=a.config,i=lay.extend({},lay.extend(n.dateTime,a.startTime)),l=lay.extend({},lay.extend(a.endDate,a.endTime));return lay.each([i,l],function(e,t){"month"in t&&lay.extend(t,{month:t.month+1})}),a.preview(),e=e||[a.parse(),i,l],"function"==typeof n[t||"done"]&&n[t||"done"].apply(n,e),a},g.prototype.choose=function(e,a){var n=this,i=n.config,l=n.thisDateTime(a),t=(lay(n.elem).find("td"),{year:0|(t=e.attr("lay-ymd").split("-"))[0],month:(0|t[1])-1,date:0|t[2]});e.hasClass(x)||(lay.extend(l,t),i.range?(lay.each(["startTime","endTime"],function(e,t){n[t]=n[t]||{hours:e?23:0,minutes:e?59:0,seconds:e?59:0},a===e&&(n.getDateTime(lay.extend({},l,n[t]))n.getDateTime(i.max)&&(n[t]={hours:i.max.hours,minutes:i.max.minutes,seconds:i.max.seconds},lay.extend(l,n[t])))}),n.calendar(null,a).done(null,"change")):"static"===i.position?n.calendar().done().done(null,"change"):"date"===i.type?n.setValue(n.parse()).remove().done():"datetime"===i.type&&n.calendar().done(null,"change"))},g.prototype.tool=function(e,t){var a=this,n=a.config,i=a.lang(),l=n.dateTime,r="static"===n.position,o={datetime:function(){lay(e).hasClass(x)||(a.list("time",0),n.range&&a.list("time",1),lay(e).attr("lay-type","date").html(a.lang().dateTips))},date:function(){a.closeList(),lay(e).attr("lay-type","datetime").html(a.lang().timeTips)},clear:function(){r&&(lay.extend(l,a.firstDate),a.calendar()),n.range&&(delete n.dateTime,delete a.endDate,delete a.startTime,delete a.endTime),a.setValue("").remove(),a.done(["",{},{}])},now:function(){var e=new Date;lay.extend(l,a.systemDate(),{hours:e.getHours(),minutes:e.getMinutes(),seconds:e.getSeconds()}),a.setValue(a.parse()).remove(),r&&a.calendar(),a.done()},confirm:function(){if(n.range){if(lay(e).hasClass(x))return a.hint("time"===n.type?i.timeout.replace(/\u65e5\u671f/g,"\u65f6\u95f4"):i.timeout)}else if(lay(e).hasClass(x))return a.hint(i.invalidDate);a.setValue(a.parse()).remove(),a.done()}};o[t]&&o[t]()},g.prototype.change=function(n){var i=this,l=i.config,r=i.thisDateTime(n),o=l.range&&("year"===l.type||"month"===l.type),s=i.elemCont[n||0],y=i.listYM[n],e=function(e){var t=lay(s).find(".laydate-year-list")[0],a=lay(s).find(".laydate-month-list")[0];return t&&(y[0]=e?y[0]-15:y[0]+15,i.list("year",n)),a&&(e?y[0]--:y[0]++,i.list("month",n)),(t||a)&&(lay.extend(r,{year:y[0]}),o&&(r.year=y[0]),l.range||i.done(null,"change"),l.range||i.limit(lay(i.footer).find(E),{year:y[0]})),i.setBtnStatus(),t||a};return{prevYear:function(){e("sub")||(r.year--,i.checkDate("limit").calendar(null,n),i.done(null,"change"))},prevMonth:function(){var e=i.getAsYM(r.year,r.month,"sub");lay.extend(r,{year:e[0],month:e[1]}),i.checkDate("limit").calendar(null,n),i.done(null,"change")},nextMonth:function(){var e=i.getAsYM(r.year,r.month);lay.extend(r,{year:e[0],month:e[1]}),i.checkDate("limit").calendar(null,n),i.done(null,"change")},nextYear:function(){e()||(r.year++,i.checkDate("limit").calendar(null,n),i.done(null,"change"))}}},g.prototype.changeEvent=function(){var i=this;i.config;lay(i.elem).on("click",function(e){lay.stope(e)}).on("mousedown",function(e){lay.stope(e)}),lay.each(i.elemHeader,function(n,e){lay(e[0]).on("click",function(e){i.change(n).prevYear()}),lay(e[1]).on("click",function(e){i.change(n).prevMonth()}),lay(e[2]).find("span").on("click",function(e){var t=lay(this),a=t.attr("lay-ym"),t=t.attr("lay-type");a&&(a=a.split("-"),i.listYM[n]=[0|a[0],0|a[1]],i.list(t,n),lay(i.footer).find("."+k).addClass(x))}),lay(e[3]).on("click",function(e){i.change(n).nextMonth()}),lay(e[4]).on("click",function(e){i.change(n).nextYear()})}),lay.each(i.table,function(e,t){lay(t).find("td").on("click",function(){i.choose(lay(this),e)})}),lay(i.footer).find("span").on("click",function(){var e=lay(this).attr("lay-type");i.tool(this,e)})},g.prototype.isInput=function(e){return/input|textarea/.test(e.tagName.toLocaleLowerCase())||/INPUT|TEXTAREA/.test(e.tagName)},g.prototype.events=function(){var a=this,n=a.config,e=function(e,t){e.on(n.trigger,function(){u.thisId!==n.id&&(t&&(a.bindElem=this),a.render())})};n.elem[0]&&!n.elem[0].eventHandler&&(e(n.elem,"bind"),e(n.eventElem),n.elem[0].eventHandler=!0)},s.that={},s.getThis=function(e){var t=s.that[e];return!t&&n&&layui.hint().error(e?a+" instance with ID '"+e+"' not found":"ID argument required"),t},l.run=function(n){n(r).on("mousedown",function(e){var t,a;!u.thisId||(t=s.getThis(u.thisId))&&(a=t.config,e.target!==a.elem[0]&&e.target!==a.eventElem[0]&&e.target!==n(a.closeStop)[0]&&t.remove())}).on("keydown",function(e){var t;!u.thisId||(t=s.getThis(u.thisId))&&"static"!==t.config.position&&13===e.keyCode&&n("#"+t.elemID)[0]&&t.elemID===g.thisElemDate&&(e.preventDefault(),n(t.footer).find(E)[0].click())}),n(i).on("resize",function(){if(u.thisId){var e=s.getThis(u.thisId);if(e)return!(!e.elem||!n(".layui-laydate")[0])&&void e.position()}})},u.render=function(e){e=new g(e);return s.call(e)},u.parse=function(a,n,i){return a=a||{},n=((n="string"==typeof n?s.formatArr(n):n)||[]).concat(),lay.each(n,function(e,t){/yyyy|y/.test(t)?n[e]=lay.digit(a.year,t.length):/MM|M/.test(t)?n[e]=lay.digit(a.month+(i||0),t.length):/dd|d/.test(t)?n[e]=lay.digit(a.date,t.length):/HH|H/.test(t)?n[e]=lay.digit(a.hours,t.length):/mm|m/.test(t)?n[e]=lay.digit(a.minutes,t.length):/ss|s/.test(t)&&(n[e]=lay.digit(a.seconds,t.length))}),n.join("")},u.getEndDate=function(e,t){var a=new Date;return a.setFullYear(t||a.getFullYear(),e||a.getMonth()+1,1),new Date(a.getTime()-864e5).getDate()},u.close=function(e){e=s.getThis(e||u.thisId);if(e)return e.remove()},n?(u.ready(),layui.define("lay",function(e){u.path=layui.cache.dir,l.run(lay),e(a,u)})):"function"==typeof define&&define.amd?define(function(){return l.run(lay),u}):(u.ready(),l.run(i.lay),i.laydate=u)}(window,window.document);!function(e,t){"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e):function(e){if(e.document)return t(e);throw new Error("jQuery requires a window with a document")}:t(e)}("undefined"!=typeof window?window:this,function(T,M){var f=[],g=T.document,c=f.slice,O=f.concat,R=f.push,P=f.indexOf,B={},W=B.toString,m=B.hasOwnProperty,y={},e="1.12.4",C=function(e,t){return new C.fn.init(e,t)},I=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,$=/^-ms-/,z=/-([\da-z])/gi,X=function(e,t){return t.toUpperCase()};function U(e){var t=!!e&&"length"in e&&e.length,n=C.type(e);return"function"!==n&&!C.isWindow(e)&&("array"===n||0===t||"number"==typeof t&&0+~]|"+a+")"+a+"*"),ee=new RegExp("="+a+"*([^\\]'\"]*?)"+a+"*\\]","g"),te=new RegExp(G),ne=new RegExp("^"+s+"$"),f={ID:new RegExp("^#("+s+")"),CLASS:new RegExp("^\\.("+s+")"),TAG:new RegExp("^("+s+"|[*])"),ATTR:new RegExp("^"+J),PSEUDO:new RegExp("^"+G),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+a+"*(even|odd|(([+-]|)(\\d*)n|)"+a+"*(?:([+-]|)"+a+"*(\\d+)|))"+a+"*\\)|)","i"),bool:new RegExp("^(?:"+Y+")$","i"),needsContext:new RegExp("^"+a+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+a+"*((?:-\\d)?\\d*)"+a+"*\\)|)(?=[^-]|$)","i")},re=/^(?:input|select|textarea|button)$/i,ie=/^h\d$/i,c=/^[^{]+\{\s*\[native \w/,oe=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ae=/[+~]/,se=/'|\\/g,d=new RegExp("\\\\([\\da-f]{1,6}"+a+"?|("+a+")|.)","ig"),p=function(e,t,n){var r="0x"+t-65536;return r!=r||n?t:r<0?String.fromCharCode(65536+r):String.fromCharCode(r>>10|55296,1023&r|56320)},ue=function(){C()};try{D.apply(n=V.call(v.childNodes),v.childNodes),n[v.childNodes.length].nodeType}catch(F){D={apply:n.length?function(e,t){U.apply(e,V.call(t))}:function(e,t){for(var n=e.length,r=0;e[n++]=t[r++];);e.length=n-1}}}function H(e,t,n,r){var i,o,a,s,u,l,c,f,d=t&&t.ownerDocument,p=t?t.nodeType:9;if(n=n||[],"string"!=typeof e||!e||1!==p&&9!==p&&11!==p)return n;if(!r&&((t?t.ownerDocument||t:v)!==E&&C(t),t=t||E,N)){if(11!==p&&(l=oe.exec(e)))if(i=l[1]){if(9===p){if(!(a=t.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(d&&(a=d.getElementById(i))&&y(t,a)&&a.id===i)return n.push(a),n}else{if(l[2])return D.apply(n,t.getElementsByTagName(e)),n;if((i=l[3])&&g.getElementsByClassName&&t.getElementsByClassName)return D.apply(n,t.getElementsByClassName(i)),n}if(g.qsa&&!A[e+" "]&&(!m||!m.test(e))){if(1!==p)d=t,f=e;else if("object"!==t.nodeName.toLowerCase()){for((s=t.getAttribute("id"))?s=s.replace(se,"\\$&"):t.setAttribute("id",s=k),o=(c=w(e)).length,u=ne.test(s)?"#"+s:"[id='"+s+"']";o--;)c[o]=u+" "+_(c[o]);f=c.join(","),d=ae.test(e)&&de(t.parentNode)||t}if(f)try{return D.apply(n,d.querySelectorAll(f)),n}catch(h){}finally{s===k&&t.removeAttribute("id")}}}return P(e.replace(L,"$1"),t,n,r)}function le(){var n=[];function r(e,t){return n.push(e+" ")>b.cacheLength&&delete r[n.shift()],r[e+" "]=t}return r}function q(e){return e[k]=!0,e}function h(e){var t=E.createElement("div");try{return!!e(t)}catch(F){return!1}finally{t.parentNode&&t.parentNode.removeChild(t)}}function ce(e,t){for(var n=e.split("|"),r=n.length;r--;)b.attrHandle[n[r]]=t}function fe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&(~t.sourceIndex||1<<31)-(~e.sourceIndex||1<<31);if(r)return r;if(n)for(;n=n.nextSibling;)if(n===t)return-1;return e?1:-1}function x(a){return q(function(o){return o=+o,q(function(e,t){for(var n,r=a([],e.length,o),i=r.length;i--;)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function de(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in g=H.support={},O=H.isXML=function(e){e=e&&(e.ownerDocument||e).documentElement;return!!e&&"HTML"!==e.nodeName},C=H.setDocument=function(e){var e=e?e.ownerDocument||e:v;return e!==E&&9===e.nodeType&&e.documentElement&&(t=(E=e).documentElement,N=!O(E),(e=E.defaultView)&&e.top!==e&&(e.addEventListener?e.addEventListener("unload",ue,!1):e.attachEvent&&e.attachEvent("onunload",ue)),g.attributes=h(function(e){return e.className="i",!e.getAttribute("className")}),g.getElementsByTagName=h(function(e){return e.appendChild(E.createComment("")),!e.getElementsByTagName("*").length}),g.getElementsByClassName=c.test(E.getElementsByClassName),g.getById=h(function(e){return t.appendChild(e).id=k,!E.getElementsByName||!E.getElementsByName(k).length}),g.getById?(b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&N)return(e=t.getElementById(e))?[e]:[]},b.filter.ID=function(e){var t=e.replace(d,p);return function(e){return e.getAttribute("id")===t}}):(delete b.find.ID,b.filter.ID=function(e){var t=e.replace(d,p);return function(e){e="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return e&&e.value===t}}),b.find.TAG=g.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):g.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"!==e)return o;for(;n=o[i++];)1===n.nodeType&&r.push(n);return r},b.find.CLASS=g.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&N)return t.getElementsByClassName(e)},r=[],m=[],(g.qsa=c.test(E.querySelectorAll))&&(h(function(e){t.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&m.push("[*^$]="+a+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||m.push("\\["+a+"*(?:value|"+Y+")"),e.querySelectorAll("[id~="+k+"-]").length||m.push("~="),e.querySelectorAll(":checked").length||m.push(":checked"),e.querySelectorAll("a#"+k+"+*").length||m.push(".#.+[+~]")}),h(function(e){var t=E.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&m.push("name"+a+"*[*^$|!~]?="),e.querySelectorAll(":enabled").length||m.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),m.push(",.*:")})),(g.matchesSelector=c.test(i=t.matches||t.webkitMatchesSelector||t.mozMatchesSelector||t.oMatchesSelector||t.msMatchesSelector))&&h(function(e){g.disconnectedMatch=i.call(e,"div"),i.call(e,"[s!='']:x"),r.push("!=",G)}),m=m.length&&new RegExp(m.join("|")),r=r.length&&new RegExp(r.join("|")),e=c.test(t.compareDocumentPosition),y=e||c.test(t.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,t=t&&t.parentNode;return e===t||!(!t||1!==t.nodeType||!(n.contains?n.contains(t):e.compareDocumentPosition&&16&e.compareDocumentPosition(t)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},$=e?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!g.sortDetached&&t.compareDocumentPosition(e)===n?e===E||e.ownerDocument===v&&y(v,e)?-1:t===E||t.ownerDocument===v&&y(v,t)?1:u?j(u,e)-j(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e===E?-1:t===E?1:i?-1:o?1:u?j(u,e)-j(u,t):0;if(i===o)return fe(e,t);for(n=e;n=n.parentNode;)a.unshift(n);for(n=t;n=n.parentNode;)s.unshift(n);for(;a[r]===s[r];)r++;return r?fe(a[r],s[r]):a[r]===v?-1:s[r]===v?1:0}),E},H.matches=function(e,t){return H(e,null,null,t)},H.matchesSelector=function(e,t){if((e.ownerDocument||e)!==E&&C(e),t=t.replace(ee,"='$1']"),g.matchesSelector&&N&&!A[t+" "]&&(!r||!r.test(t))&&(!m||!m.test(t)))try{var n=i.call(e,t);if(n||g.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(F){}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(d,p),e[3]=(e[3]||e[4]||e[5]||"").replace(d,p),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||H.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&H.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return f.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&te.test(n)&&(t=w(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(d,p).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=W[e+" "];return t||(t=new RegExp("(^|"+a+")"+e+"("+a+"|$)"))&&W(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(t,n,r){return function(e){e=H.attr(e,t);return null==e?"!="===n:!n||(e+="","="===n?e===r:"!="===n?e!==r:"^="===n?r&&0===e.indexOf(r):"*="===n?r&&-1(?:<\/\1>|)$/,G=/^.[^:#\[\.,]*$/;function K(e,n,r){if(C.isFunction(n))return C.grep(e,function(e,t){return!!n.call(e,t,e)!==r});if(n.nodeType)return C.grep(e,function(e){return e===n!==r});if("string"==typeof n){if(G.test(n))return C.filter(n,e,r);n=C.filter(n,e)}return C.grep(e,function(e){return-1)[^>]*|#([\w-]*))$/,ee=((C.fn.init=function(e,t,n){if(!e)return this;if(n=n||Q,"string"!=typeof e)return e.nodeType?(this.context=this[0]=e,this.length=1,this):C.isFunction(e)?"undefined"!=typeof n.ready?n.ready(e):e(C):(e.selector!==undefined&&(this.selector=e.selector,this.context=e.context),C.makeArray(e,this));if(!(r="<"===e.charAt(0)&&">"===e.charAt(e.length-1)&&3<=e.length?[null,e,null]:Z.exec(e))||!r[1]&&t)return(!t||t.jquery?t||n:this.constructor(t)).find(e);if(r[1]){if(t=t instanceof C?t[0]:t,C.merge(this,C.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:g,!0)),J.test(r[1])&&C.isPlainObject(t))for(var r in t)C.isFunction(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}if((n=g.getElementById(r[2]))&&n.parentNode){if(n.id!==r[2])return Q.find(e);this.length=1,this[0]=n}return this.context=g,this.selector=e,this}).prototype=C.fn,Q=C(g),/^(?:parents|prev(?:Until|All))/),te={children:!0,contents:!0,next:!0,prev:!0};function ne(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}C.fn.extend({has:function(e){var t,n=C(e,this),r=n.length;return this.filter(function(){for(t=0;t
a",y.leadingWhitespace=3===S.firstChild.nodeType,y.tbody=!S.getElementsByTagName("tbody").length,y.htmlSerialize=!!S.getElementsByTagName("link").length,y.html5Clone="<:nav>"!==g.createElement("nav").cloneNode(!0).outerHTML,q.type="checkbox",q.checked=!0,k.appendChild(q),y.appendChecked=q.checked,S.innerHTML="",y.noCloneChecked=!!S.cloneNode(!0).lastChild.defaultValue,k.appendChild(S),(q=g.createElement("input")).setAttribute("type","radio"),q.setAttribute("checked","checked"),q.setAttribute("name","t"),S.appendChild(q),y.checkClone=S.cloneNode(!0).cloneNode(!0).lastChild.checked,y.noCloneEvent=!!S.addEventListener,S[C.expando]=1,y.attributes=!S.getAttribute(C.expando);var x={option:[1,""],legend:[1,"
","
"],area:[1,"",""],param:[1,"",""],thead:[1,"","
"],tr:[2,"","
"],col:[2,"","
"],td:[3,"","
"],_default:y.htmlSerialize?[0,"",""]:[1,"X
","
"]};function b(e,t){var n,r,i=0,o="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):undefined;if(!o)for(o=[],n=e.childNodes||e;null!=(r=n[i]);i++)!t||C.nodeName(r,t)?o.push(r):C.merge(o,b(r,t));return t===undefined||t&&C.nodeName(e,t)?C.merge([e],o):o}function we(e,t){for(var n,r=0;null!=(n=e[r]);r++)C._data(n,"globalEval",!t||C._data(t[r],"globalEval"))}x.optgroup=x.option,x.tbody=x.tfoot=x.colgroup=x.caption=x.thead,x.th=x.td;var Te=/<|&#?\w+;/,Ce=/"!==f[1]||Ce.test(a)?0:u:u.firstChild)&&a.childNodes.length;o--;)C.nodeName(c=a.childNodes[o],"tbody")&&!c.childNodes.length&&a.removeChild(c);for(C.merge(h,u.childNodes),u.textContent="";u.firstChild;)u.removeChild(u.firstChild);u=p.lastChild}else h.push(t.createTextNode(a));for(u&&p.removeChild(u),y.appendChecked||C.grep(b(h,"input"),Ee),g=0;a=h[g++];)if(r&&-1]","i"),Pe=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:-]+)[^>]*)\/>/gi,Be=/\s*$/g,ze=be(g).appendChild(g.createElement("div"));function Xe(e,t){return C.nodeName(e,"table")&&C.nodeName(11!==t.nodeType?t:t.firstChild,"tr")?e.getElementsByTagName("tbody")[0]||e.appendChild(e.ownerDocument.createElement("tbody")):e}function Ue(e){return e.type=(null!==C.find.attr(e,"type"))+"/"+e.type,e}function Ve(e){var t=Ie.exec(e.type);return t?e.type=t[1]:e.removeAttribute("type"),e}function Ye(e,t){if(1===t.nodeType&&C.hasData(e)){var n,r,i,e=C._data(e),o=C._data(t,e),a=e.events;if(a)for(n in delete o.handle,o.events={},a)for(r=0,i=a[n].length;r")},clone:function(e,t,n){var r,i,o,a,s,u=C.contains(e.ownerDocument,e);if(y.html5Clone||C.isXMLDoc(e)||!Re.test("<"+e.nodeName+">")?o=e.cloneNode(!0):(ze.innerHTML=e.outerHTML,ze.removeChild(o=ze.firstChild)),!(y.noCloneEvent&&y.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||C.isXMLDoc(e)))for(r=b(o),s=b(e),a=0;null!=(i=s[a]);++a)if(r[a]){f=c=l=p=d=void 0;var l,c,f,d=i,p=r[a];if(1===p.nodeType){if(l=p.nodeName.toLowerCase(),!y.noCloneEvent&&p[C.expando]){for(c in(f=C._data(p)).events)C.removeEvent(p,c,f.handle);p.removeAttribute(C.expando)}"script"===l&&p.text!==d.text?(Ue(p).text=d.text,Ve(p)):"object"===l?(p.parentNode&&(p.outerHTML=d.outerHTML),y.html5Clone&&d.innerHTML&&!C.trim(p.innerHTML)&&(p.innerHTML=d.innerHTML)):"input"===l&&ge.test(d.type)?(p.defaultChecked=p.checked=d.checked,p.value!==d.value&&(p.value=d.value)):"option"===l?p.defaultSelected=p.selected=d.defaultSelected:"input"!==l&&"textarea"!==l||(p.defaultValue=d.defaultValue)}}if(t)if(n)for(s=s||b(e),r=r||b(o),a=0;null!=(i=s[a]);a++)Ye(i,r[a]);else Ye(e,o);return 0<(r=b(o,"script")).length&&we(r,!u&&b(e,"script")),r=s=i=null,o},cleanData:function(e,t){for(var n,r,i,o,a=0,s=C.expando,u=C.cache,l=y.attributes,c=C.event.special;null!=(n=e[a]);a++)if((t||v(n))&&(o=(i=n[s])&&u[i])){if(o.events)for(r in o.events)c[r]?C.event.remove(n,r):C.removeEvent(n,r,o.handle);u[i]&&(delete u[i],l||"undefined"==typeof n.removeAttribute?n[s]=undefined:n.removeAttribute(s),f.push(i))}}}),C.fn.extend({domManip:w,detach:function(e){return Je(this,e,!0)},remove:function(e){return Je(this,e)},text:function(e){return d(this,function(e){return e===undefined?C.text(this):this.empty().append((this[0]&&this[0].ownerDocument||g).createTextNode(e))},null,e,arguments.length)},append:function(){return w(this,arguments,function(e){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||Xe(this,e).appendChild(e)})},prepend:function(){return w(this,arguments,function(e){var t;1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(t=Xe(this,e)).insertBefore(e,t.firstChild)})},before:function(){return w(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return w(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++){for(1===e.nodeType&&C.cleanData(b(e,!1));e.firstChild;)e.removeChild(e.firstChild);e.options&&C.nodeName(e,"select")&&(e.options.length=0)}return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return C.clone(this,e,t)})},html:function(e){return d(this,function(e){var t=this[0]||{},n=0,r=this.length;if(e===undefined)return 1===t.nodeType?t.innerHTML.replace(Oe,""):undefined;if("string"==typeof e&&!Be.test(e)&&(y.htmlSerialize||!Re.test(e))&&(y.leadingWhitespace||!ve.test(e))&&!x[(me.exec(e)||["",""])[1].toLowerCase()]){e=C.htmlPrefilter(e);try{for(;n")).appendTo(t.documentElement))[0].contentWindow||Ge[0].contentDocument).document).write(),t.close(),n=Qe(e,t),Ge.detach()),Ke[e]=n),n}var n,et,tt,nt,rt,it,ot,a,at=/^margin/,st=new RegExp("^("+e+")(?!px)[a-z%]+$","i"),ut=function(e,t,n,r){var i,o={};for(i in t)o[i]=e.style[i],e.style[i]=t[i];for(i in r=n.apply(e,r||[]),t)e.style[i]=o[i];return r},lt=g.documentElement;function t(){var e,t=g.documentElement;t.appendChild(ot),a.style.cssText="-webkit-box-sizing:border-box;box-sizing:border-box;position:relative;display:block;margin:auto;border:1px;padding:1px;top:1%;width:50%",n=tt=it=!1,et=rt=!0,T.getComputedStyle&&(e=T.getComputedStyle(a),n="1%"!==(e||{}).top,it="2px"===(e||{}).marginLeft,tt="4px"===(e||{width:"4px"}).width,a.style.marginRight="50%",et="4px"===(e||{marginRight:"4px"}).marginRight,(e=a.appendChild(g.createElement("div"))).style.cssText=a.style.cssText="-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:0",e.style.marginRight=e.style.width="0",a.style.width="1px",rt=!parseFloat((T.getComputedStyle(e)||{}).marginRight),a.removeChild(e)),a.style.display="none",(nt=0===a.getClientRects().length)&&(a.style.display="",a.innerHTML="
t
",a.childNodes[0].style.borderCollapse="separate",(e=a.getElementsByTagName("td"))[0].style.cssText="margin:0;border:0;padding:0;display:none",(nt=0===e[0].offsetHeight)&&(e[0].style.display="",e[1].style.display="none",nt=0===e[0].offsetHeight)),t.removeChild(ot)}ot=g.createElement("div"),(a=g.createElement("div")).style&&(a.style.cssText="float:left;opacity:.5",y.opacity="0.5"===a.style.opacity,y.cssFloat=!!a.style.cssFloat,a.style.backgroundClip="content-box",a.cloneNode(!0).style.backgroundClip="",y.clearCloneStyle="content-box"===a.style.backgroundClip,(ot=g.createElement("div")).style.cssText="border:0;width:8px;height:0;top:0;left:-9999px;padding:0;margin-top:1px;position:absolute",a.innerHTML="",ot.appendChild(a),y.boxSizing=""===a.style.boxSizing||""===a.style.MozBoxSizing||""===a.style.WebkitBoxSizing,C.extend(y,{reliableHiddenOffsets:function(){return null==n&&t(),nt},boxSizingReliable:function(){return null==n&&t(),tt},pixelMarginRight:function(){return null==n&&t(),et},pixelPosition:function(){return null==n&&t(),n},reliableMarginRight:function(){return null==n&&t(),rt},reliableMarginLeft:function(){return null==n&&t(),it}}));var l,p,ct=/^(top|right|bottom|left)$/;function ft(e,t){return{get:function(){if(!e())return(this.get=t).apply(this,arguments);delete this.get}}}T.getComputedStyle?(l=function(e){var t=e.ownerDocument.defaultView;return(t=t&&t.opener?t:T).getComputedStyle(e)},p=function(e,t,n){var r,i,o=e.style;return""!==(i=(n=n||l(e))?n.getPropertyValue(t)||n[t]:undefined)&&i!==undefined||C.contains(e.ownerDocument,e)||(i=C.style(e,t)),n&&!y.pixelMarginRight()&&st.test(i)&&at.test(t)&&(e=o.width,t=o.minWidth,r=o.maxWidth,o.minWidth=o.maxWidth=o.width=i,i=n.width,o.width=e,o.minWidth=t,o.maxWidth=r),i===undefined?i:i+""}):lt.currentStyle&&(l=function(e){return e.currentStyle},p=function(e,t,n){var r,i,o,a=e.style;return null==(n=(n=n||l(e))?n[t]:undefined)&&a&&a[t]&&(n=a[t]),st.test(n)&&!ct.test(t)&&(r=a.left,(o=(i=e.runtimeStyle)&&i.left)&&(i.left=e.currentStyle.left),a.left="fontSize"===t?"1em":n,n=a.pixelLeft+"px",a.left=r,o&&(i.left=o)),n===undefined?n:n+""||"auto"});var dt=/alpha\([^)]*\)/i,pt=/opacity\s*=\s*([^)]*)/i,ht=/^(none|table(?!-c[ea]).+)/,gt=new RegExp("^("+e+")(.*)$","i"),mt={position:"absolute",visibility:"hidden",display:"block"},yt={letterSpacing:"0",fontWeight:"400"},vt=["Webkit","O","Moz","ms"],xt=g.createElement("div").style;function bt(e){if(e in xt)return e;for(var t=e.charAt(0).toUpperCase()+e.slice(1),n=vt.length;n--;)if((e=vt[n]+t)in xt)return e}function wt(e,t){for(var n,r,i,o=[],a=0,s=e.length;a
a",F=q.getElementsByTagName("a")[0],k.setAttribute("type","checkbox"),q.appendChild(k),(F=q.getElementsByTagName("a")[0]).style.cssText="top:1px",y.getSetAttribute="t"!==q.className,y.style=/top/.test(F.getAttribute("style")),y.hrefNormalized="/a"===F.getAttribute("href"),y.checkOn=!!k.value,y.optSelected=e.selected,y.enctype=!!g.createElement("form").enctype,S.disabled=!0,y.optDisabled=!e.disabled,(k=g.createElement("input")).setAttribute("value",""),y.input=""===k.getAttribute("value"),k.value="t",k.setAttribute("type","radio"),y.radioValue="t"===k.value;var Lt=/\r/g,Ht=/[\x20\t\r\n\f]+/g;C.fn.extend({val:function(t){var n,e,r,i=this[0];return arguments.length?(r=C.isFunction(t),this.each(function(e){1===this.nodeType&&(null==(e=r?t.call(this,e,C(this).val()):t)?e="":"number"==typeof e?e+="":C.isArray(e)&&(e=C.map(e,function(e){return null==e?"":e+""})),(n=C.valHooks[this.type]||C.valHooks[this.nodeName.toLowerCase()])&&"set"in n&&n.set(this,e,"value")!==undefined||(this.value=e))})):i?(n=C.valHooks[i.type]||C.valHooks[i.nodeName.toLowerCase()])&&"get"in n&&(e=n.get(i,"value"))!==undefined?e:"string"==typeof(e=i.value)?e.replace(Lt,""):null==e?"":e:void 0}}),C.extend({valHooks:{option:{get:function(e){var t=C.find.attr(e,"value");return null!=t?t:C.trim(C.text(e)).replace(Ht," ")}},select:{get:function(e){for(var t,n=e.options,r=e.selectedIndex,i="select-one"===e.type||r<0,o=i?null:[],a=i?r+1:n.length,s=r<0?a:i?r:0;s").append(C.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},C.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){C.fn[t]=function(e){return this.on(t,e)}}),C.expr.filters.animated=function(t){return C.grep(C.timers,function(e){return t===e.elem}).length},C.offset={setOffset:function(e,t,n){var r,i,o,a,s=C.css(e,"position"),u=C(e),l={};"static"===s&&(e.style.position="relative"),o=u.offset(),r=C.css(e,"top"),a=C.css(e,"left"),s=("absolute"===s||"fixed"===s)&&-1'+(o?n.title[0]:n.title)+"
":"";return n.zIndex=a,t([n.shade?'
':"",'
'+(e&&2!=n.type?"":o)+'
'+(0==n.type&&-1!==n.icon?'':"")+((1!=n.type||!e)&&n.content||"")+'
'+(i=s?'':"",n.closeBtn&&(i+=''),i)+""+(n.btn?function(){var e="";"string"==typeof n.btn&&(n.btn=[n.btn]);for(var t=0,i=n.btn.length;t'+n.btn[t]+"";return'
'+e+"
"}():"")+(n.resize?'':"")+"
"],o,h('
')),this},t.pt.creat=function(){var e,n=this,a=n.config,o=n.index,s="object"==typeof(l=a.content),r=h("body");if(!a.id||!h("#"+a.id)[0]){switch("string"==typeof a.area&&(a.area="auto"===a.area?["",""]:[a.area,""]),a.shift&&(a.anim=a.shift),6==m.ie&&(a.fixed=!1),a.type){case 0:a.btn="btn"in a?a.btn:f.btn[0],m.closeAll("dialog");break;case 2:var l=a.content=s?a.content:[a.content||"","auto"];a.content='';break;case 3:delete a.title,delete a.closeBtn,-1===a.icon&&a.icon,m.closeAll("loading");break;case 4:s||(a.content=[a.content,"body"]),a.follow=a.content[1],a.content=a.content[0]+'',delete a.title,a.tips="object"==typeof a.tips?a.tips:[a.tips,!0],a.tipsMore||m.closeAll("tips")}n.vessel(s,function(e,t,i){r.append(e[0]),s?2==a.type||4==a.type?h("body").append(e[1]):l.parents("."+d[0])[0]||(l.data("display",l.css("display")).show().addClass("layui-layer-wrap").wrap(e[1]),h("#"+d[0]+o).find("."+d[5]).before(t)):r.append(e[1]),h("#"+d.MOVE)[0]||r.append(f.moveElem=i),n.layero=h("#"+d[0]+o),n.shadeo=h("#"+d.SHADE+o),a.scrollbar||d.html.css("overflow","hidden").attr("layer-full",o)}).auto(o),n.shadeo.css({"background-color":a.shade[1]||"#000",opacity:a.shade[0]||a.shade}),2==a.type&&6==m.ie&&n.layero.find("iframe").attr("src",l[0]),4==a.type?n.tips():(n.offset(),parseInt(f.getStyle(document.getElementById(d.MOVE),"z-index"))||(n.layero.css("visibility","hidden"),m.ready(function(){n.offset(),n.layero.css("visibility","visible")}))),a.fixed&&c.on("resize",function(){n.offset(),(/^\d+%$/.test(a.area[0])||/^\d+%$/.test(a.area[1]))&&n.auto(o),4==a.type&&n.tips()}),a.time<=0||setTimeout(function(){m.close(n.index)},a.time),n.move().callback(),d.anim[a.anim]&&(e="layer-anim "+d.anim[a.anim],n.layero.addClass(e).one("webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend",function(){h(this).removeClass(e)})),a.isOutAnim&&n.layero.data("isOutAnim",!0)}},t.pt.auto=function(e){var t=this.config,i=h("#"+d[0]+e),n=(""===t.area[0]&&0t.maxWidth&&i.width(t.maxWidth)),[i.innerWidth(),i.innerHeight()]),a=i.find(d[1]).outerHeight()||0,o=i.find("."+d[6]).outerHeight()||0,e=function(e){(e=i.find(e)).height(n[1]-a-o-2*(0|parseFloat(e.css("padding-top"))))};return 2===t.type?e("iframe"):""===t.area[1]?0t.maxHeight?(n[1]=t.maxHeight,e("."+d[5])):t.fixed&&n[1]>=c.height()&&(n[1]=c.height(),e("."+d[5])):e("."+d[5]),this},t.pt.offset=function(){var e=this,t=e.config,i=e.layero,n=[i.outerWidth(),i.outerHeight()],a="object"==typeof t.offset;e.offsetTop=(c.height()-n[1])/2,e.offsetLeft=(c.width()-n[0])/2,a?(e.offsetTop=t.offset[0],e.offsetLeft=t.offset[1]||e.offsetLeft):"auto"!==t.offset&&("t"===t.offset?e.offsetTop=0:"r"===t.offset?e.offsetLeft=c.width()-n[0]:"b"===t.offset?e.offsetTop=c.height()-n[1]:"l"===t.offset?e.offsetLeft=0:"lt"===t.offset?(e.offsetTop=0,e.offsetLeft=0):"lb"===t.offset?(e.offsetTop=c.height()-n[1],e.offsetLeft=0):"rt"===t.offset?(e.offsetTop=0,e.offsetLeft=c.width()-n[0]):"rb"===t.offset?(e.offsetTop=c.height()-n[1],e.offsetLeft=c.width()-n[0]):e.offsetTop=t.offset),t.fixed||(e.offsetTop=/%$/.test(e.offsetTop)?c.height()*parseFloat(e.offsetTop)/100:parseFloat(e.offsetTop),e.offsetLeft=/%$/.test(e.offsetLeft)?c.width()*parseFloat(e.offsetLeft)/100:parseFloat(e.offsetLeft),e.offsetTop+=c.scrollTop(),e.offsetLeft+=c.scrollLeft()),i.attr("minLeft")&&(e.offsetTop=c.height()-(i.find(d[1]).outerHeight()||0),e.offsetLeft=i.css("left")),i.css({top:e.offsetTop,left:e.offsetLeft})},t.pt.tips=function(){var e=this.config,t=this.layero,i=[t.outerWidth(),t.outerHeight()],n=h(e.follow),a={width:(n=n[0]?n:h("body")).outerWidth(),height:n.outerHeight(),top:n.offset().top,left:n.offset().left},o=t.find(".layui-layer-TipsG"),n=e.tips[0];e.tips[1]||o.remove(),a.autoLeft=function(){0":'',o=i.success;return delete i.success,m.open(h.extend({type:1,btn:["确定","取消"],content:t,skin:"layui-layer-prompt"+g("prompt"),maxWidth:c.width(),success:function(e){(a=e.find(".layui-layer-input")).val(i.value||"").focus(),"function"==typeof o&&o(e)},resize:!1,yes:function(e){var t=a.val();""===t?a.focus():t.length>(i.maxlength||500)?m.tips("最多输入"+(i.maxlength||500)+"个字数",a,{tips:1}):n&&n(t,e,a)}},i))},m.tab=function(n){var a=(n=n||{}).tab||{},o="layui-this",s=n.success;return delete n.success,m.open(h.extend({type:1,skin:"layui-layer-tab"+g("tab"),resize:!1,title:function(){var e=a.length,t=1,i="";if(0'+a[0].title+"";t"+a[t].title+"";return i}(),content:'
    '+function(){var e=a.length,t=1,i="";if(0'+(a[0].content||"no content")+"";t'+(a[t].content||"no content")+"";return i}()+"
",success:function(e){var t=e.find(".layui-layer-title").children(),i=e.find(".layui-layer-tabmain").children();t.on("mousedown",function(e){e.stopPropagation?e.stopPropagation():e.cancelBubble=!0;var e=h(this),t=e.index();e.addClass(o).siblings().removeClass(o),i.eq(t).show().siblings().hide(),"function"==typeof n.change&&n.change(t)}),"function"==typeof s&&s(e)}},n))},m.photos=function(i,e,n){var a={};if((i=i||{}).photos){var t=!("string"==typeof i.photos||i.photos instanceof h),o=t?i.photos:{},s=o.data||[],r=o.start||0,l=(a.imgIndex=1+(0|r),i.img=i.img||"img",i.success);if(delete i.success,t){if(0===s.length)return m.msg("没有图片")}else{var c=h(i.photos),f=function(){s=[],c.find(i.img).each(function(e){var t=h(this);t.attr("layer-index",e),s.push({alt:t.attr("alt"),pid:t.attr("layer-pid"),src:t.attr("layer-src")||t.attr("src"),thumb:t.attr("src")})})};if(f(),0===s.length)return;if(e||c.on("click",i.img,function(){f();var e=h(this).attr("layer-index");m.photos(h.extend(i,{photos:{start:e,data:s,tab:i.tab},full:i.full}),!0)}),!e)return}a.imgprev=function(e){a.imgIndex--,a.imgIndex<1&&(a.imgIndex=s.length),a.tabimg(e)},a.imgnext=function(e,t){a.imgIndex++,a.imgIndex>s.length&&(a.imgIndex=1,t)||a.tabimg(e)},a.keyup=function(e){var t;a.end||(t=e.keyCode,e.preventDefault(),37===t?a.imgprev(!0):39===t?a.imgnext(!0):27===t&&m.close(a.index))},a.tabimg=function(e){if(!(s.length<=1))return o.start=a.imgIndex-1,m.close(a.index),m.photos(i,!0,e)},a.event=function(){a.bigimg.find(".layui-layer-imgprev").on("click",function(e){e.preventDefault(),a.imgprev(!0)}),a.bigimg.find(".layui-layer-imgnext").on("click",function(e){e.preventDefault(),a.imgnext(!0)}),h(document).on("keyup",a.keyup)},a.loadi=m.load(1,{shade:!("shade"in i)&&.9,scrollbar:!1});var t=s[r].src,d=function(e){var t;m.close(a.loadi),n&&(i.anim=-1),a.index=m.open(h.extend({type:1,id:"layui-layer-photos",area:(e=[e.width,e.height],t=[h(p).width()-100,h(p).height()-100],!i.full&&(e[0]>t[0]||e[1]>t[1])&&((t=[e[0]/t[0],e[1]/t[1]])[1]'+(s[r].alt||'+(1
'+(s[r].alt||"")+""+a.imgIndex+" / "+s.length+"
":"")+"
",success:function(e,t){a.bigimg=e.find(".layui-layer-phimg"),a.imgsee=e.find(".layui-layer-imgbar"),a.event(e),i.tab&&i.tab(s[r],e),"function"==typeof l&&l(e)},end:function(){a.end=!0,h(document).off("keyup",a.keyup)}},i))},u=function(){m.close(a.loadi),m.msg("当前图片地址异常
是否继续查看下一张?",{time:3e4,btn:["下一张","不看了"],yes:function(){1f)&&(e.parentNode.style.transitionDelay="0.2s");try{var r=new CustomEvent(u+"-closing",{detail:s,bubbles:!0,cancelable:!0});document.dispatchEvent(r)}catch(l){console.warn(l)}setTimeout(function(){e.parentNode.style.height="0px",e.parentNode.style.overflow="",setTimeout(function(){delete i.children[s.ref],e.parentNode.remove();try{var t=new CustomEvent(u+"-closed",{detail:s,bubbles:!0,cancelable:!0});document.dispatchEvent(t)}catch(l){console.warn(l)}"undefined"!=typeof s.onClosed&&s.onClosed.apply(null,[s,e,o])},1e3)},200),"undefined"!=typeof s.onClosing&&s.onClosing.apply(null,[s,e,o])},c.show=function(t){var n=this,i=b(y,t||{});if((i=b(h,i)).time={},null===i.id&&(i.id=(t=i.title+i.message+i.color,btoa(encodeURIComponent(t)).replace(/=/g,""))),1===i.displayMode||"once"==i.displayMode)try{if(0',t.bar1?'
  • '+l[0]+"
  • ":"",t.bar2?'
  • '+l[1]+"
  • ":"",'
  • '+l[2]+"
  • ",""].join("")),c=l.find("."+o),g=function(){a.scrollTop()>=t.showHeight?e||(c.show(),e=1):e&&(c.hide(),e=0)};u("."+n)[0]||("object"==typeof t.css&&l.css(t.css),r.append(l),g(),l.find("li").on("click",function(){var e=u(this).attr("lay-type");"top"===e&&u("html,body").animate({scrollTop:0},200),t.click&&t.click.call(this,e)}),a.on("scroll",function(){clearTimeout(i),i=setTimeout(function(){g()},100)}))},countdown:function(e,t,i){var n=this,o="function"==typeof t,a=new Date(e).getTime(),r=new Date(!t||o?(new Date).getTime():t).getTime(),a=a-r,l=[Math.floor(a/864e5),Math.floor(a/36e5)%24,Math.floor(a/6e4)%60,Math.floor(a/1e3)%60],o=(o&&(i=t),setTimeout(function(){n.countdown(e,r+1e3,i)},1e3));return i&&i(0]|&(?=#[a-zA-Z0-9]+)/g.test(e+="")?e.replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,"""):e},unescape:function(e){return e!==undefined&&null!==e||(e=""),(e+="").replace(/\&/g,"&").replace(/\</g,"<").replace(/\>/g,">").replace(/\'/g,"'").replace(/\"/g,'"')},toVisibleArea:function(e){var t,i,n,o,a,r,l,c;(e=u.extend({margin:160,duration:200,type:"y"},e)).scrollElem[0]&&e.thisElem[0]&&(t=e.scrollElem,l=e.thisElem,n=(a="y"===e.type)?"top":"left",o=t[i=a?"scrollTop":"scrollLeft"](),a=t[a?"height":"width"](),r=t.offset()[n],c={},((l=l.offset()[n]-r)>a-e.margin||l."+y,k=function(e){var i=this;i.index=++c.index,i.config=s.extend({},i.config,c.config,e),i.init()};k.prototype.config={trigger:"click",content:"",className:"",style:"",show:!1,isAllowSpread:!0,isSpreadItem:!0,data:[],empty:"\u65e0",delay:300},k.prototype.reload=function(e){var i=this;i.config=s.extend({},i.config,e),i.init(!0)},k.prototype.init=function(e){var i=this,t=i.config,n=t.elem=s(t.elem);return 1",(t="href"in i?''+l+"":l,n?'
    '+t+("parent"===o?'':"group"===o&&u.isAllowSpread?'':"")+"
    ":'
    '+t+"
    "),""].join(""))).data("item",i),n&&(a=s('
    '),t=s("
      "),"parent"===o?(a.append(d(t,i.child)),l.append(a)):l.append(d(t,i.child))),r.append(l))}),r},t=['
      ',"
      "].join("");!(e="contextmenu"!==u.trigger&&!lay.isTopElem(u.elem[0])?e:!0)&&u.elem.data(r+"_opened")||(n.elemView=s(t),n.elemView.append(u.content||(e=s('
        '),0'+u.empty+""),e)),u.className&&n.elemView.addClass(u.className),u.style&&n.elemView.attr("style",u.style),c.thisId=u.id,n.remove(),i.append(n.elemView),u.elem.data(r+"_opened",!0),n.position(),(p.prevElem=n.elemView).data("prevElem",u.elem),n.elemView.find(".layui-menu").on(l,function(e){layui.stope(e)}),n.elemView.find(".layui-menu li").on("click",function(e){var i=s(this),t=i.data("item")||{};t.child&&0n.width()&&(t.addClass(C),(i=t[0].getBoundingClientRect()).left<0&&t.removeClass(C)),i.bottom>n.height()&&t.eq(0).css("margin-top",-(i.bottom-n.height()+5)))}).on("mouseleave",t,function(e){var i=s(this).children("."+w);i.removeClass(C),i.css("margin-top",0)}),c.reload=function(e,i){e=p.getThis(e);return e?(e.reload(i),p.call(e)):this},c.render=function(e){e=new k(e);return p.call(e)},e(o,c)});layui.define("jquery",function(e){"use strict";var h=layui.$,t={config:{},index:layui.slider?layui.slider.index+1e4:0,set:function(e){var i=this;return i.config=h.extend({},i.config,e),i},on:function(e,i){return layui.onevent.call(this,a,e,i)}},a="slider",c="layui-disabled",y="layui-slider-bar",g="layui-slider-wrap",b="layui-slider-wrap-btn",x="layui-slider-tips",T="layui-slider-input-txt",w="layui-slider-hover",i=function(e){var i=this;i.index=++t.index,i.config=h.extend({},i.config,t.config,e),i.render()};i.prototype.config={type:"default",min:0,max:100,value:0,step:1,showstep:!1,tips:!0,input:!1,range:!1,height:200,disabled:!1,theme:"#009688"},i.prototype.render=function(){var a,n=this,l=n.config,e=(l.step<1&&(l.step=1),l.maxl.min?i:l.min,l.value[1]=s>l.min?s:l.min,l.value[0]=l.value[0]>l.max?l.max:l.value[0],l.value[1]=l.value[1]>l.max?l.max:l.value[1],i=Math.floor((l.value[0]-l.min)/(l.max-l.min)*100),t=(s=Math.floor((l.value[1]-l.min)/(l.max-l.min)*100))-i+"%",i+="%",s+="%"):("object"==typeof l.value&&(l.value=Math.min.apply(null,l.value)),l.valuel.max&&(l.value=l.max),t=Math.floor((l.value-l.min)/(l.max-l.min)*100)+"%"),l.disabled?"#c2c2c2":l.theme),i='
        '+(l.tips?'
        ':"")+'
        '+(l.range?'
        ':"")+"
        ",t=h(l.elem),s=t.next(".layui-slider");if(s[0]&&s.remove(),n.elemTemp=h(i),l.range?(n.elemTemp.find("."+g).eq(0).data("value",l.value[0]),n.elemTemp.find("."+g).eq(1).data("value",l.value[1])):n.elemTemp.find("."+g).data("value",l.value),t.html(n.elemTemp),"vertical"===l.type&&n.elemTemp.height(l.height+"px"),l.showstep){for(var o=(l.max-l.min)/l.step,r="",u=1;u<1+o;u++){var d=100*u/o;d<100&&(r+='
        ')}n.elemTemp.append(r)}l.input&&!l.range&&(e=h('
        '),t.css("position","relative"),t.append(e),t.find("."+T).children("input").val(l.value),"vertical"===l.type?e.css({left:0,top:-48}):n.elemTemp.css("margin-right",e.outerWidth()+15)),l.disabled?(n.elemTemp.addClass(c),n.elemTemp.find("."+b).addClass(c)):n.slide(),n.elemTemp.find("."+b).on("mouseover",function(){var e="vertical"===l.type?l.height:n.elemTemp[0].offsetWidth,i=n.elemTemp.find("."+g),t=("vertical"===l.type?e-h(this).parent()[0].offsetTop-i.height():h(this).parent()[0].offsetLeft)/e*100,i=h(this).parent().data("value"),e=l.setTips?l.setTips(i):i;n.elemTemp.find("."+x).html(e),clearTimeout(a),a=setTimeout(function(){"vertical"===l.type?n.elemTemp.find("."+x).css({bottom:t+"%","margin-bottom":"20px",display:"inline-block"}):n.elemTemp.find("."+x).css({left:t+"%",display:"inline-block"})},300)}).on("mouseout",function(){clearTimeout(a),n.elemTemp.find("."+x).css("display","none")})},i.prototype.slide=function(e,i,t){var o=this.config,r=this.elemTemp,u=function(){return"vertical"===o.type?o.height:r[0].offsetWidth},d=r.find("."+g),s=r.next(".layui-slider-input"),c=s.children("."+T).children("input").val(),m=100/((o.max-o.min)/Math.ceil(o.step)),v=function(e,i){e=100<(e=100t[1]&&t.reverse(),o.change&&o.change(o.range?t:n)},p=function(e){var i=e/u()*100/m,t=Math.round(i)*m;return t=e==u()?Math.ceil(i)*m:t},f=h(['
        u()?u():i)/u()*100/m;v(i,l),s.addClass(w),r.find("."+x).show(),e.preventDefault()},i=function(){s.removeClass(w),r.find("."+x).hide()},t=function(){i&&i(),f.remove()},h("#LAY-slider-moving")[0]||h("body").append(f),f.on("mousemove",e),f.on("mouseup",t).on("mouseleave",t)})}),r.on("click",function(e){var i=h("."+b),t=h(this);!i.is(event.target)&&0===i.has(event.target).length&&i.length&&(t=(i=(i=(i="vertical"===o.type?u()-e.clientY+t.offset().top-h(window).scrollTop():e.clientX-t.offset().left-h(window).scrollLeft())<0?0:i)>u()?u():i)/u()*100/m,i=o.range?"vertical"===o.type?Math.abs(i-parseInt(h(d[0]).css("bottom")))>Math.abs(i-parseInt(h(d[1]).css("bottom")))?1:0:Math.abs(i-d[0].offsetLeft)>Math.abs(i-d[1].offsetLeft)?1:0:0,v(t,i),e.preventDefault())}),s.children(".layui-slider-input-btn").children("i").each(function(i){h(this).on("click",function(){c=s.children("."+T).children("input").val();var e=((c=1==i?c-o.stepo.max?o.max:Number(c)+o.step)-o.min)/(o.max-o.min)*100/m;v(e,0)})});var a=function(){var e=this.value,e=(e=(e=(e=isNaN(e)?0:e)o.max?o.max:e,((this.value=e)-o.min)/(o.max-o.min)*100/m);v(e,0)};s.children("."+T).children("input").on("keydown",function(e){13===e.keyCode&&(e.preventDefault(),a.call(this))}).on("change",a)},i.prototype.events=function(){this.config},t.render=function(e){e=new i(e);return function(){var t=this,a=t.config;return{setValue:function(e,i){return a.value=e,t.slide("set",e,i||0)},config:a}}.call(e)},e(a,t)});layui.define(["jquery","lay"],function(e){"use strict";var y=layui.jquery,o=layui.lay,r=layui.device().mobile?"click":"mousedown",i={config:{},index:layui.colorpicker?layui.colorpicker.index+1e4:0,set:function(e){var i=this;return i.config=y.extend({},i.config,e),i},on:function(e,i){return layui.onevent.call(this,"colorpicker",e,i)}},n="layui-colorpicker",l=".layui-colorpicker-main",m="layui-icon-down",x="layui-icon-close",P="layui-colorpicker-trigger-span",C="layui-colorpicker-trigger-i",B="layui-colorpicker-side-slider",w="layui-colorpicker-basis",D="layui-colorpicker-alpha-bgcolor",j="layui-colorpicker-alpha-slider",E="layui-colorpicker-basis-cursor",F="layui-colorpicker-main-input",H=function(e){var i={h:0,s:0,b:0},o=Math.min(e.r,e.g,e.b),r=Math.max(e.r,e.g,e.b),n=r-o;return i.b=r,i.s=0!=r?255*n/r:0,0!=i.s?e.r==r?i.h=(e.g-e.b)/n:e.g==r?i.h=2+(e.b-e.r)/n:i.h=4+(e.r-e.g)/n:i.h=-1,r==o&&(i.h=0),i.h*=60,i.h<0&&(i.h+=360),i.s*=100/255,i.b*=100/255,i},M=function(e){var i,o={},r=e.h,n=255*e.s/100,e=255*e.b/100;return 0==n?o.r=o.g=o.b=e:(e=r%60*((i=e)-(n=(255-n)*e/255))/60,(r=360==r?0:r)<60?(o.r=i,o.b=n,o.g=n+e):r<120?(o.g=i,o.b=n,o.r=i-e):r<180?(o.g=i,o.r=n,o.b=n+e):r<240?(o.b=i,o.r=n,o.g=i-e):r<300?(o.b=i,o.g=n,o.r=n+e):r<360?(o.r=i,o.g=n,o.b=i-e):(o.r=0,o.g=0,o.b=0)),{r:Math.round(o.r),g:Math.round(o.g),b:Math.round(o.b)}},f=function(e){var e=M(e),o=[e.r.toString(16),e.g.toString(16),e.b.toString(16)];return y.each(o,function(e,i){1==i.length&&(o[e]="0"+i)}),o.join("")},Y=function(e){e=e.match(/[0-9]{1,3}/g)||[];return{r:e[0],g:e[1],b:e[2]}},I=y(window),t=y(document),c=function(e){this.index=++i.index,this.config=y.extend({},this.config,i.config,e),this.render()};c.prototype.config={color:"",size:null,alpha:!1,format:"hex",predefine:!1,colors:["#009688","#5FB878","#1E9FFF","#FF5722","#FFB800","#01AAED","#999","#c00","#ff8c00","#ffd700","#90ee90","#00ced1","#1e90ff","#c71585","rgb(0, 186, 189)","rgb(255, 120, 0)","rgb(250, 212, 0)","#393D49","rgba(0,0,0,.5)","rgba(255, 69, 0, 0.68)","rgba(144, 240, 144, 0.5)","rgba(31, 147, 255, 0.73)"]},c.prototype.render=function(){var e=this,i=e.config,o=y(['
        ',"",'','',"","","
        "].join("")),r=y(i.elem);i.size&&o.addClass("layui-colorpicker-"+i.size),r.addClass("layui-inline").html(e.elemColorBox=o),e.color=e.elemColorBox.find("."+P)[0].style.background,e.events()},c.prototype.renderPicker=function(){var o,e=this,i=e.config,r=e.elemColorBox[0],i=e.elemPicker=y(['
        ','
        ','
        ','
        ','
        ','
        ',"
        ",'
        ','
        ',"
        ","
        ",'
        ','
        ','
        ',"
        ","
        ",i.predefine?(o=['
        '],layui.each(i.colors,function(e,i){o.push(['
        ','
        ',"
        "].join(""))}),o.push("
        "),o.join("")):"",'
        ','
        ','',"
        ",'
        ','','',"","
        "].join(""));e.elemColorBox.find("."+P)[0];y(l)[0]&&y(l).data("index")==e.index?e.removePicker(c.thisElemInd):(e.removePicker(c.thisElemInd),y("body").append(i)),c.thisElemInd=e.index,c.thisColor=r.style.background,e.position(),e.pickerEvents()},c.prototype.removePicker=function(e){this.config;return y("#layui-colorpicker"+(e||this.index)).remove(),this},c.prototype.position=function(){var e=this,i=e.config;return o.position(e.bindElem||e.elemColorBox[0],e.elemPicker[0],{position:i.position,align:"center"}),e},c.prototype.val=function(){var e,i=this,o=(i.config,i.elemColorBox.find("."+P)),r=i.elemPicker.find("."+F),n=o[0].style.backgroundColor;n?(e=H(Y(n)),o=o.attr("lay-type"),i.select(e.h,e.s,e.b),"torgb"===o&&r.find("input").val(n),"rgba"===o&&(e=Y(n),3==(n.match(/[0-9]{1,3}/g)||[]).length?(r.find("input").val("rgba("+e.r+", "+e.g+", "+e.b+", 1)"),i.elemPicker.find("."+j).css("left",280)):(r.find("input").val(n),o=280*n.slice(n.lastIndexOf(",")+1,n.length-1),i.elemPicker.find("."+j).css("left",o)),i.elemPicker.find("."+D)[0].style.background="linear-gradient(to right, rgba("+e.r+", "+e.g+", "+e.b+", 0), rgb("+e.r+", "+e.g+", "+e.b+"))")):(i.select(0,100,100),r.find("input").val(""),i.elemPicker.find("."+D)[0].style.background="",i.elemPicker.find("."+j).css("left",280))},c.prototype.side=function(){var n=this,l=n.config,t=n.elemColorBox.find("."+P),c=t.attr("lay-type"),a=n.elemPicker.find(".layui-colorpicker-side"),e=n.elemPicker.find("."+B),s=n.elemPicker.find("."+w),r=n.elemPicker.find("."+E),d=n.elemPicker.find("."+D),f=n.elemPicker.find("."+j),u=e[0].offsetTop/180*360,p=100-(r[0].offsetTop+3)/180*100,g=(r[0].offsetLeft+3)/260*100,h=Math.round(f[0].offsetLeft/280*100)/100,v=n.elemColorBox.find("."+C),i=n.elemPicker.find(".layui-colorpicker-pre").children("div"),b=function(e,i,o,r){n.select(e,i,o);e=M({h:e,s:i,b:o});v.addClass(m).removeClass(x),t[0].style.background="rgb("+e.r+", "+e.g+", "+e.b+")","torgb"===c&&n.elemPicker.find("."+F).find("input").val("rgb("+e.r+", "+e.g+", "+e.b+")"),"rgba"===c&&(f.css("left",280*r),n.elemPicker.find("."+F).find("input").val("rgba("+e.r+", "+e.g+", "+e.b+", "+r+")"),t[0].style.background="rgba("+e.r+", "+e.g+", "+e.b+", "+r+")",d[0].style.background="linear-gradient(to right, rgba("+e.r+", "+e.g+", "+e.b+", 0), rgb("+e.r+", "+e.g+", "+e.b+"))"),l.change&&l.change(n.elemPicker.find("."+F).find("input").val())},o=y(['
        '].join("")),k=function(e){y("#LAY-colorpicker-moving")[0]||y("body").append(o),o.on("mousemove",e),o.on("mouseup",function(){o.remove()}).on("mouseleave",function(){o.remove()})};e.on("mousedown",function(e){var r=this.offsetTop,n=e.clientY;k(function(e){var i=r+(e.clientY-n),o=a[0].offsetHeight,o=(i=o<(i=i<0?0:i)?o:i)/180*360;b(u=o,g,p,h),e.preventDefault()}),e.preventDefault()}),a.on("click",function(e){var i=e.clientY-y(this).offset().top,i=(i=(i=i<0?0:i)>this.offsetHeight?this.offsetHeight:i)/180*360;b(u=i,g,p,h),e.preventDefault()}),r.on("mousedown",function(e){var l=this.offsetTop,t=this.offsetLeft,c=e.clientY,a=e.clientX;layui.stope(e),k(function(e){var i=l+(e.clientY-c),o=t+(e.clientX-a),r=s[0].offsetHeight-3,n=s[0].offsetWidth-3,n=((o=n<(o=o<-3?-3:o)?n:o)+3)/260*100,o=100-((i=r<(i=i<-3?-3:i)?r:i)+3)/180*100;b(u,g=n,p=o,h),e.preventDefault()}),e.preventDefault()}),s.on("mousedown",function(e){var i=e.clientY-y(this).offset().top-3+I.scrollTop(),o=e.clientX-y(this).offset().left-3+I.scrollLeft(),o=((i=i<-3?-3:i)>this.offsetHeight-3&&(i=this.offsetHeight-3),((o=(o=o<-3?-3:o)>this.offsetWidth-3?this.offsetWidth-3:o)+3)/260*100),i=100-(i+3)/180*100;b(u,g=o,p=i,h),layui.stope(e),e.preventDefault(),r.trigger(e,"mousedown")}),f.on("mousedown",function(e){var r=this.offsetLeft,n=e.clientX;k(function(e){var i=r+(e.clientX-n),o=d[0].offsetWidth,o=(o<(i=i<0?0:i)&&(i=o),Math.round(i/280*100)/100);b(u,g,p,h=o),e.preventDefault()}),e.preventDefault()}),d.on("click",function(e){var i=e.clientX-y(this).offset().left,i=((i=i<0?0:i)>this.offsetWidth&&(i=this.offsetWidth),Math.round(i/280*100)/100);b(u,g,p,h=i),e.preventDefault()}),i.each(function(){y(this).on("click",function(){y(this).parent(".layui-colorpicker-pre").addClass("selected").siblings().removeClass("selected");var e=this.style.backgroundColor,i=H(Y(e)),o=e.slice(e.lastIndexOf(",")+1,e.length-1);u=i.h,g=i.s,p=i.b,3==(e.match(/[0-9]{1,3}/g)||[]).length&&(o=1),h=o,b(i.h,i.s,i.b,o)})})},c.prototype.select=function(e,i,o,r){var n=this,l=(n.config,f({h:e,s:100,b:100})),t=f({h:e,s:i,b:o}),e=e/360*180,o=180-o/100*180-3,i=i/100*260-3;n.elemPicker.find("."+B).css("top",e),n.elemPicker.find("."+w)[0].style.background="#"+l,n.elemPicker.find("."+E).css({top:o,left:i}),"change"!==r&&n.elemPicker.find("."+F).find("input").val("#"+t)},c.prototype.pickerEvents=function(){var c=this,a=c.config,s=c.elemColorBox.find("."+P),d=c.elemPicker.find("."+F+" input"),o={clear:function(e){s[0].style.background="",c.elemColorBox.find("."+C).removeClass(m).addClass(x),c.color="",a.done&&a.done(""),c.removePicker()},confirm:function(e,i){var o,r,n=d.val(),l=n,t={};if(-1>16,g:(65280&o)>>8,b:255&o},t=H(r),s[0].style.background=l="#"+f(t),c.elemColorBox.find("."+C).removeClass(x).addClass(m)),"change"===i)return c.select(t.h,t.s,t.b,i),void(a.change&&a.change(l));c.color=n,a.done&&a.done(n),c.removePicker()}};c.elemPicker.on("click","*[colorpicker-events]",function(){var e=y(this),i=e.attr("colorpicker-events");o[i]&&o[i].call(this,e)}),d.on("keyup",function(e){var i=y(this);o.confirm.call(this,i,13===e.keyCode?null:"change")})},c.prototype.events=function(){var i=this,e=i.config,o=i.elemColorBox.find("."+P);i.elemColorBox.on("click",function(){i.renderPicker(),y(l)[0]&&(i.val(),i.side())}),e.elem[0]&&!i.elemColorBox[0].eventHandler&&(t.on(r,function(e){y(e.target).hasClass(n)||y(e.target).parents("."+n)[0]||y(e.target).hasClass(l.replace(/\./g,""))||y(e.target).parents(l)[0]||i.elemPicker&&(i.color?(e=H(Y(i.color)),i.select(e.h,e.s,e.b)):i.elemColorBox.find("."+C).removeClass(m).addClass(x),o[0].style.background=i.color||"",i.removePicker())}),I.on("resize",function(){if(!i.elemPicker||!y(l)[0])return!1;i.position()}),i.elemColorBox[0].eventHandler=!0)},i.render=function(e){e=new c(e);return function(){return{config:this.config}}.call(e)},e("colorpicker",i)});layui.define("jquery",function(t){"use strict";var u=layui.$,d=(layui.hint(),layui.device()),c="element",r="layui-this",y="layui-show",i=function(){this.config={}},h=(i.prototype.set=function(t){return u.extend(!0,this.config,t),this},i.prototype.on=function(t,i){return layui.onevent.call(this,c,t,i)},i.prototype.tabAdd=function(t,i){var a,t=u(".layui-tab[lay-filter="+t+"]"),e=t.children(".layui-tab-title"),l=e.children(".layui-tab-bar"),t=t.children(".layui-tab-content"),n=""+(i.title||"unnaming")+"";return l[0]?l.before(n):e.append(n),t.append('
        '+(i.content||"")+"
        "),C.hideTabMore(!0),C.tabAuto(),this},i.prototype.tabDelete=function(t,i){t=u(".layui-tab[lay-filter="+t+"]").children(".layui-tab-title").find('>li[lay-id="'+i+'"]');return C.tabDelete(null,t),this},i.prototype.tabChange=function(t,i){t=u(".layui-tab[lay-filter="+t+"]").children(".layui-tab-title").find('>li[lay-id="'+i+'"]');return C.tabClick.call(t[0],null,null,t),this},i.prototype.tab=function(a){a=a||{},e.on("click",a.headerElem,function(t){var i=u(this).index();C.tabClick.call(this,t,i,null,a)})},i.prototype.progress=function(t,i){var a="layui-progress",t=u("."+a+"[lay-filter="+t+"]").find("."+a+"-bar"),a=t.find("."+a+"-text");return t.css("width",i).attr("lay-percent",i),a.text(i),this},".layui-nav"),f="layui-nav-item",l="layui-nav-bar",p="layui-nav-tree",b="layui-nav-child",v="layui-nav-more",m="layui-anim layui-anim-upbit",C={tabClick:function(t,i,a,e){e=e||{};var a=a||u(this),i=i||a.parent().children("li").index(a),l=e.headerElem?a.parent():a.parents(".layui-tab").eq(0),e=e.bodyElem?u(e.bodyElem):l.children(".layui-tab-content").children(".layui-tab-item"),n=a.find("a"),n="javascript:;"!==n.attr("href")&&"_blank"===n.attr("target"),s="string"==typeof a.attr("lay-unselect"),o=l.attr("lay-filter");n||s||(a.addClass(r).siblings().removeClass(r),e.eq(i).addClass(y).siblings().removeClass(y)),layui.event.call(this,c,"tab("+o+")",{elem:l,index:i})},tabDelete:function(t,i){var i=i||u(this).parent(),a=i.index(),e=i.parents(".layui-tab").eq(0),l=e.children(".layui-tab-content").children(".layui-tab-item"),n=e.attr("lay-filter");i.hasClass(r)&&(i.next()[0]&&i.next().is("li")?C.tabClick.call(i.next()[0],null,a+1):i.prev()[0]&&i.prev().is("li")&&C.tabClick.call(i.prev()[0],null,a-1)),i.remove(),l.eq(a).remove(),setTimeout(function(){C.tabAuto()},50),layui.event.call(this,c,"tabDelete("+n+")",{elem:e,index:a})},tabAuto:function(){var e="layui-tab-bar",l="layui-tab-close",n=this;u(".layui-tab").each(function(){var t=u(this),i=t.children(".layui-tab-title"),a=(t.children(".layui-tab-content").children(".layui-tab-item"),'lay-stope="tabmore"'),a=u('');n===window&&8!=d.ie&&C.hideTabMore(!0),t.attr("lay-allowClose")&&i.find("li").each(function(){var t,i=u(this);i.find("."+l)[0]||((t=u('')).on("click",C.tabDelete),i.append(t))}),"string"!=typeof t.attr("lay-unauto")&&(i.prop("scrollWidth")>i.outerWidth()+1?i.find("."+e)[0]||(i.append(a),t.attr("overflow",""),a.on("click",function(t){i[this.title?"removeClass":"addClass"]("layui-tab-more"),this.title=this.title?"":"\u6536\u7f29"})):(i.find("."+e).remove(),t.removeAttr("overflow")))})},hideTabMore:function(t){var i=u(".layui-tab-title");!0!==t&&"tabmore"===u(t.target).attr("lay-stope")||(i.removeClass("layui-tab-more"),i.find(".layui-tab-bar").attr("title",""))},clickThis:function(){var t=u(this),i=t.parents(h),a=i.attr("lay-filter"),e=t.parent(),l=t.siblings("."+b),n="string"==typeof e.attr("lay-unselect");"javascript:;"!==t.attr("href")&&"_blank"===t.attr("target")||n||l[0]||(i.find("."+r).removeClass(r),e.addClass(r)),i.hasClass(p)&&(l.removeClass(m),l[0]&&(e["none"===l.css("display")?"addClass":"removeClass"](f+"ed"),"all"===i.attr("lay-shrink")&&e.siblings().removeClass(f+"ed"))),layui.event.call(this,c,"nav("+a+")",t)},collapse:function(){var t=u(this),i=t.find(".layui-colla-icon"),a=t.siblings(".layui-colla-content"),e=t.parents(".layui-collapse").eq(0),l=e.attr("lay-filter"),n="none"===a.css("display");"string"==typeof e.attr("lay-accordion")&&((e=e.children(".layui-colla-item").children("."+y)).siblings(".layui-colla-title").children(".layui-colla-icon").html(""),e.removeClass(y)),a[n?"addClass":"removeClass"](y),i.html(n?"":""),layui.event.call(this,c,"collapse("+l+")",{title:t,content:a,show:n})}},a=(i.prototype.render=i.prototype.init=function(t,i){var a=i?'[lay-filter="'+i+'"]':"",i={tab:function(){C.tabAuto.call({})},nav:function(){var s={},o={},c={},r="layui-nav-title";u(h+a).each(function(t){var i=u(this),a=u(''),e=i.find("."+f);i.find("."+l)[0]||(i.append(a),(i.hasClass(p)?e.find("dd,>."+r):e).on("mouseenter",function(){!function(t,i,a){var e,l=u(this),n=l.find("."+b);i.hasClass(p)?n[0]||(e=l.children("."+r),t.css({top:l.offset().top-i.offset().top,height:(e[0]?e:l).outerHeight(),opacity:1})):(n.addClass(m),n.hasClass("layui-nav-child-c")&&n.css({left:-(n.outerWidth()-l.width())/2}),n[0]?t.css({left:t.position().left+t.width()/2,width:0,opacity:0}):t.css({left:l.position().left+parseFloat(l.css("marginLeft")),top:l.position().top+l.height()-t.height()}),s[a]=setTimeout(function(){t.css({width:n[0]?0:l.width(),opacity:n[0]?0:1})},d.ie&&d.ie<10?0:200),clearTimeout(c[a]),"block"===n.css("display")&&clearTimeout(o[a]),o[a]=setTimeout(function(){n.addClass(y),l.find("."+v).addClass(v+"d")},300))}.call(this,a,i,t)}).on("mouseleave",function(){i.hasClass(p)?a.css({height:0,opacity:0}):(clearTimeout(o[t]),o[t]=setTimeout(function(){i.find("."+b).removeClass(y),i.find("."+v).removeClass(v+"d")},300))}),i.on("mouseleave",function(){clearTimeout(s[t]),c[t]=setTimeout(function(){i.hasClass(p)||a.css({width:0,left:a.position().left+a.width()/2,opacity:0})},200)})),e.find("a").each(function(){var t=u(this);t.parent();t.siblings("."+b)[0]&&!t.children("."+v)[0]&&t.append(''),t.off("click",C.clickThis).on("click",C.clickThis)})})},breadcrumb:function(){u(".layui-breadcrumb"+a).each(function(){var t=u(this),i="lay-separator",a=t.attr(i)||"/",e=t.find("a");e.next("span["+i+"]")[0]||(e.each(function(t){t!==e.length-1&&u(this).after(""+a+"")}),t.css("visibility","visible"))})},progress:function(){var e="layui-progress";u("."+e+a).each(function(){var t=u(this),i=t.find(".layui-progress-bar"),a=i.attr("lay-percent");i.css("width",/^.+\/.+$/.test(a)?100*new Function("return "+a)()+"%":a),t.attr("lay-showPercent")&&setTimeout(function(){i.html(''+a+"")},350)})},collapse:function(){u(".layui-collapse"+a).each(function(){u(this).find(".layui-colla-item").each(function(){var t=u(this),i=t.find(".layui-colla-title"),t="none"===t.find(".layui-colla-content").css("display");i.find(".layui-colla-icon").remove(),i.append(''+(t?"":"")+""),i.off("click",C.collapse).on("click",C.collapse)})})}};return i[t]?i[t]():layui.each(i,function(t,i){i()})},new i),e=u(document);u(function(){a.render()});e.on("click",".layui-tab-title li",C.tabClick),e.on("click",C.hideTabMore),u(window).on("resize",C.tabAuto),t(c,a)});layui.define("layer",function(e){"use strict";var y=layui.$,t=layui.layer,r=layui.hint(),F=layui.device(),i={config:{},set:function(e){var t=this;return t.config=y.extend({},t.config,e),t},on:function(e,t){return layui.onevent.call(this,n,e,t)}},n="upload",o="layui-upload-file",a="layui-upload-form",b="layui-upload-iframe",x="layui-upload-choose",w=function(e){var t=this;t.config=y.extend({},t.config,i.config,e),t.render()};w.prototype.config={accept:"images",exts:"",auto:!0,bindAction:"",url:"",force:"",field:"file",acceptMime:"",method:"post",data:{},drag:!0,size:0,number:0,multiple:!1},w.prototype.render=function(e){var t=this;(e=t.config).elem=y(e.elem),e.bindAction=y(e.bindAction),t.file(),t.events()},w.prototype.file=function(){var e=this,t=e.config,i=e.elemFile=y(['"].join("")),n=t.elem.next();(n.hasClass(o)||n.hasClass(a))&&n.remove(),F.ie&&F.ie<10&&t.elem.wrap('
        '),e.isFile()?(e.elemFile=t.elem,t.field=t.elem[0].name):t.elem.after(i),F.ie&&F.ie<10&&e.initIE()},w.prototype.initIE=function(){var i,e=this.config,t=y(''),n=y(['
        ',"
        "].join(""));y("#"+b)[0]||y("body").append(t),e.elem.next().hasClass(a)||(this.elemFile.wrap(n),e.elem.next("."+a).append((i=[],layui.each(e.data,function(e,t){t="function"==typeof t?t():t,i.push('')}),i.join(""))))},w.prototype.msg=function(e){return t.msg(e,"warning")},w.prototype.isFile=function(){var e=this.config.elem[0];if(e)return"input"===e.tagName.toLocaleLowerCase()&&"file"===e.type},w.prototype.preview=function(n){window.FileReader&&layui.each(this.chooseFiles,function(e,t){var i=new FileReader;i.readAsDataURL(t),i.onload=function(){n&&n(e,t,this.result)}})},w.prototype.upload=function(i,e,l){var n,o,t,a,r=this,u=r.config,c=r.elemFile[0],s=function(){var t=0,o=0,e=i||r.files||r.chooseFiles||c.files,a=function(){u.multiple&&t+o===r.fileLength&&"function"==typeof u.allDone&&u.allDone({total:r.fileLength,successful:t,failed:o})};layui.each(e,function(i,e){var n=new FormData,e=(n.append(u.field,e,l),layui.each(u.data,function(e,t){t="function"==typeof t?t():t,n.append(e,t)}),{url:u.url,type:"post",data:n,contentType:!1,processData:!1,dataType:"json",headers:u.headers||{},success:function(e){t++,p(i,e),a()},error:function(e){o++,r.msg("Request URL is abnormal: "+(e.statusText||"error")),d(i),a()}});"function"==typeof u.progress&&(e.xhr=function(){var e=y.ajaxSettings.xhr();return e.upload.addEventListener("progress",function(e){var t;e.lengthComputable&&(t=Math.floor(e.loaded/e.total*100),u.progress(t,(u.item||u.elem)[0],e,i))}),e}),y.ajax(e)})},f=function(){var n=y("#"+b);r.elemFile.parent().submit(),clearInterval(w.timer),w.timer=setInterval(function(){var e,t=n.contents().find("body");try{e=t.text()}catch(i){r.msg("Cross-domain requests are not supported"),clearInterval(w.timer),d()}e&&(clearInterval(w.timer),t.html(""),p(0,e))},30)},p=function(e,t){if(r.elemFile.next("."+x).remove(),c.value="","json"===u.force&&"object"!=typeof t)try{t=JSON.parse(t)}catch(i){return t={},r.msg("Please return JSON data format")}"function"==typeof u.done&&u.done(t,e||0,function(e){r.upload(e)})},d=function(e){u.auto&&(c.value=""),"function"==typeof u.error&&u.error(e||0,function(e){r.upload(e)})},m=u.exts,h=(o=[],layui.each(i||r.chooseFiles,function(e,t){o.push(t.name)}),o),g={preview:function(e){r.preview(e)},upload:function(e,t,i){var n={};n[e]=t,r.upload(n,"post",i)},pushFile:function(){return r.files=r.files||{},layui.each(r.chooseFiles,function(e,t){r.files[e]=t}),r.files},resetFile:function(e,t,i){t=new File([t],i);r.files=r.files||{},r.files[e]=t}},v={file:"\u6587\u4ef6",images:"\u56fe\u7247",video:"\u89c6\u9891",audio:"\u97f3\u9891"}[u.accept]||"\u6587\u4ef6",h=0===h.length?c.value.match(/[^\/\\]+\..+/g)||[]||"":h;if(0!==h.length){switch(u.accept){case"file":layui.each(h,function(e,t){if(m&&!RegExp(".\\.("+m+")$","i").test(escape(t)))return n=!0});break;case"video":layui.each(h,function(e,t){if(!RegExp(".\\.("+(m||"avi|mp4|wma|rmvb|rm|flash|3gp|flv")+")$","i").test(escape(t)))return n=!0});break;case"audio":layui.each(h,function(e,t){if(!RegExp(".\\.("+(m||"mp3|wav|mid")+")$","i").test(escape(t)))return n=!0});break;default:layui.each(h,function(e,t){if(!RegExp(".\\.("+(m||"jpg|png|gif|bmp|jpeg")+")$","i").test(escape(t)))return n=!0})}if(n)return r.msg("\u9009\u62e9\u7684"+v+"\u4e2d\u5305\u542b\u4e0d\u652f\u6301\u7684\u683c\u5f0f"),c.value="";if("choose"!==e&&!u.auto||(u.choose&&u.choose(g),"choose"!==e)){if(r.fileLength=(t=0,v=i||r.files||r.chooseFiles||c.files,layui.each(v,function(){t++}),t),u.number&&r.fileLength>u.number)return r.msg("\u540c\u65f6\u6700\u591a\u53ea\u80fd\u4e0a\u4f20: "+u.number+" \u4e2a\u6587\u4ef6
        \u60a8\u5f53\u524d\u5df2\u7ecf\u9009\u62e9\u4e86: "+r.fileLength+" \u4e2a\u6587\u4ef6");if(01024*u.size&&(t=1<=(t=u.size/1024)?t.toFixed(2)+"MB":u.size+"KB",c.value="",a=t)}),a)return r.msg("\u6587\u4ef6\u5927\u5c0f\u4e0d\u80fd\u8d85\u8fc7 "+a);if(!u.before||!1!==u.before(g))F.ie?(9'+e+"")};o.elem.off("upload.start").on("upload.start",function(){var e=y(this),t=e.attr("lay-data");if(t)try{t=new Function("return "+t)(),n.config=y.extend({},o,t)}catch(i){r.error("Upload element property lay-data configuration item has a syntax error: "+t)}n.config.item=e,n.elemFile[0].click()}),F.ie&&F.ie<10||o.elem.off("upload.over").on("upload.over",function(){y(this).attr("lay-over","")}).off("upload.leave").on("upload.leave",function(){y(this).removeAttr("lay-over")}).off("upload.drop").on("upload.drop",function(e,t){var i=y(this),t=t.originalEvent.dataTransfer.files||[];i.removeAttr("lay-over"),a(t),o.auto?n.upload():l(t)}),n.elemFile.off("upload.change").on("upload.change",function(){var e=this.files||[];a(e),o.auto?n.upload():l(e)}),o.bindAction.off("upload.action").on("upload.action",function(){n.upload()}),o.elem.data("haveEvents")||(n.elemFile.on("change",function(){y(this).trigger("upload.change")}),o.elem.on("click",function(){n.isFile()||y(this).trigger("upload.start")}),o.drag&&o.elem.on("dragover",function(e){e.preventDefault(),y(this).trigger("upload.over")}).on("dragleave",function(e){y(this).trigger("upload.leave")}).on("drop",function(e){e.preventDefault(),y(this).trigger("upload.drop",e)}),o.bindAction.on("click",function(){y(this).trigger("upload.action")}),o.elem.data("haveEvents",!0))},i.render=function(e){e=new w(e);return function(){var t=this;return{upload:function(e){t.upload.call(t,e)},reload:function(e){t.reload.call(t,e)},config:t.config}}.call(e)},e(n,i)});layui.define("layer",function(e){"use strict";var C=layui.$,h=layui.layer,l=layui.hint(),w=(layui.device(),"form"),s=".layui-form",T="layui-this",$="layui-hide",E="layui-disabled",t=function(){this.config={verify:{required:[/[\S]+/,"\u5fc5\u586b\u9879\u4e0d\u80fd\u4e3a\u7a7a"],phone:[/^1\d{10}$/,"\u8bf7\u8f93\u5165\u6b63\u786e\u7684\u624b\u673a\u53f7"],email:[/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/,"\u90ae\u7bb1\u683c\u5f0f\u4e0d\u6b63\u786e"],url:[/^(#|(http(s?)):\/\/|\/\/)[^\s]+\.[^\s]+$/,"\u94fe\u63a5\u683c\u5f0f\u4e0d\u6b63\u786e"],number:function(e){if(!e||isNaN(e))return"\u53ea\u80fd\u586b\u5199\u6570\u5b57"},date:[/^(\d{4})[-\/](\d{1}|0\d{1}|1[0-2])([-\/](\d{1}|0\d{1}|[1-2][0-9]|3[0-1]))*$/,"\u65e5\u671f\u683c\u5f0f\u4e0d\u6b63\u786e"],identity:[/(^\d{15}$)|(^\d{17}(x|X|\d)$)/,"\u8bf7\u8f93\u5165\u6b63\u786e\u7684\u8eab\u4efd\u8bc1\u53f7"]},autocomplete:null}},i=(t.prototype.set=function(e){return C.extend(!0,this.config,e),this},t.prototype.verify=function(e){return C.extend(!0,this.config.verify,e),this},t.prototype.getFormElem=function(e){return C(s+(e?'[lay-filter="'+e+'"]':""))},t.prototype.on=function(e,t){return layui.onevent.call(this,w,e,t)},t.prototype.val=function(e,i){return this.getFormElem(e).each(function(e,t){var a=C(this);layui.each(i,function(e,t){var i,e=a.find('[name="'+e+'"]');e[0]&&("checkbox"===(i=e[0].type)?e[0].checked=t:"radio"===i?e.each(function(){this.value==t&&(this.checked=!0)}):e.val(t))})}),r.render(null,e),this.getValue(e)},t.prototype.getValue=function(e,t){t=t||this.getFormElem(e);var a={},n={},e=t.find("input,select,textarea");return layui.each(e,function(e,t){var i;C(this);t.name=(t.name||"").replace(/^\s*|\s*&/,""),t.name&&(/^.*\[\]$/.test(t.name)&&(i=t.name.match(/^(.*)\[\]$/g)[0],a[i]=0|a[i],i=t.name.replace(/^(.*)\[\]$/,"$1["+a[i]+++"]")),/^checkbox|radio$/.test(t.type)&&!t.checked||(n[i||t.name]=t.value))}),n},t.prototype.render=function(e,t){var i=this.config,a=C(s+(t?'[lay-filter="'+t+'"]':"")),n={input:function(e){e=e||a.find("input,textarea");i.autocomplete&&e.attr("autocomplete",i.autocomplete)},select:function(e){var p,c="\u8bf7\u9009\u62e9",m="layui-form-select",g="layui-select-title",k="layui-select-none",x="",e=e||a.find("select"),b=function(e,t){C(e.target).parent().hasClass(g)&&!t||(C("."+m).removeClass(m+"ed "+m+"up"),p&&x&&p.val(x)),p=null},u=function(a,e,t){var o,r,i,n,s,l,c=C(this),u=a.find("."+g),d=u.find("input"),f=a.find("dl"),h=f.children("dd"),y=f.children("dt"),v=this.selectedIndex;e||(r=c.attr("lay-search"),i=function(){var e=a.offset().top+a.outerHeight()+5-q.scrollTop(),t=f.outerHeight();v=c[0].selectedIndex,a.addClass(m+"ed"),h.removeClass($),y.removeClass($),o=null,h.eq(v).addClass(T).siblings().removeClass(T),e+t>q.height()&&t<=e&&a.addClass(m+"up"),s()},n=function(e){a.removeClass(m+"ed "+m+"up"),d.blur(),o=null,e||l(d.val(),function(e){var t=c[0].selectedIndex;e&&(x=C(c[0].options[t]).html(),0===t&&x===d.attr("placeholder")&&(x=""),d.val(x||""))})},s=function(){var e,t,i=f.children("dd."+T);i[0]&&(e=i.position().top,t=f.height(),i=i.height(),t\u65e0\u5339\u914d\u9879

        '):f.find("."+k).remove()},"keyup"),""===t&&f.find("."+k).remove(),s()}).on("blur",function(e){var t=c[0].selectedIndex;p=d,x=C(c[0].options[t]).html(),0===t&&x===d.attr("placeholder")&&(x=""),setTimeout(function(){l(d.val(),function(e){x||d.val("")},"blur")},200)}),h.on("click",function(){var e=C(this),t=e.attr("lay-value"),i=c.attr("lay-filter");return e.hasClass(E)||(e.hasClass("layui-select-tips")?d.val(""):(d.val(e.text()),e.addClass(T)),e.siblings().removeClass(T),c.val(t).removeClass("layui-form-danger"),layui.event.call(this,w,"select("+i+")",{elem:c[0],value:t,othis:a}),n(!0)),!1}),a.find("dl>dt").on("click",function(e){return!1}),C(document).off("click",b).on("click",b))};e.each(function(e,t){var i=C(this),a=i.next("."+m),n=this.disabled,l=t.value,r=C(t.options[t.selectedIndex]),t=t.options[0];if("string"==typeof i.attr("lay-ignore"))return i.show();var o,s="string"==typeof i.attr("lay-search"),t=t&&!t.value&&t.innerHTML||c,r=C(['
        ','
        ','','
        ','
        ',(t=i.find("*"),o=[],layui.each(t,function(e,t){0!==e||t.value?"optgroup"===t.tagName.toLowerCase()?o.push("
        "+t.label+"
        "):o.push('
        '+C.trim(t.innerHTML)+"
        "):o.push('
        '+C.trim(t.innerHTML||c)+"
        ")}),0===o.length&&o.push('
        \u6ca1\u6709\u9009\u9879
        '),o.join("")+"
        "),"
        "].join(""));a[0]&&a.remove(),i.after(r),u.call(this,r,n,s)})},checkbox:function(e){var s={checkbox:["layui-form-checkbox","layui-form-checked","checkbox"],_switch:["layui-form-switch","layui-form-onswitch","switch"]},e=e||a.find("input[type=checkbox]");e.each(function(e,t){var i=C(this),a=i.attr("lay-skin"),n=(i.attr("lay-text")||"").split("|"),l=this.disabled,r=s[a="switch"===a?"_"+a:a]||s.checkbox;if("string"==typeof i.attr("lay-ignore"))return i.show();var o=i.next("."+r[0]),t=C(['
        ",(l={checkbox:[t.title.replace(/\s/g,"")?""+t.title+"":"",''].join(""),_switch:""+((t.checked?n[0]:n[1])||"")+""})[a]||l.checkbox,"
        "].join(""));o[0]&&o.remove(),i.after(t),function(i,a){var n=C(this);i.on("click",function(){var e=n.attr("lay-filter"),t=(n.attr("lay-text")||"").split("|");n[0].disabled||(n[0].checked?(n[0].checked=!1,i.removeClass(a[1]).find("em").text(t[1])):(n[0].checked=!0,i.addClass(a[1]).find("em").text(t[0])),layui.event.call(n[0],w,a[2]+"("+e+")",{elem:n[0],value:n[0].value,othis:i}))})}.call(this,t,r)})},radio:function(e){var r="layui-form-radio",o=["",""],e=e||a.find("input[type=radio]");e.each(function(e,t){var i=C(this),a=i.next("."+r),n=this.disabled;if("string"==typeof i.attr("lay-ignore"))return i.show();a[0]&&a.remove();n=C(['
        ',''+o[t.checked?0:1]+"","
        "+(a=t.title||"",a="string"==typeof i.next().attr("lay-radio")?i.next().html():a)+"
        ","
        "].join(""));i.after(n),function(a){var n=C(this),l="layui-anim-scaleSpring";a.on("click",function(){var e=n[0].name,t=n.parents(s),i=n.attr("lay-filter"),e=t.find("input[name="+e.replace(/(\.|#|\[|\])/g,"\\$1")+"]");n[0].disabled||(layui.each(e,function(){var e=C(this).next("."+r);this.checked=!1,e.removeClass(r+"ed"),e.find(".layui-icon").removeClass(l).html(o[1])}),n[0].checked=!0,a.addClass(r+"ed"),a.find(".layui-icon").addClass(l).html(o[0]),layui.event.call(n[0],w,"radio("+i+")",{elem:n[0],value:n[0].value,othis:a}))})}.call(this,n)})}};return"object"===layui.type(e)?e.each(function(e,t){var i=C(t);i.closest(s).length&&("SELECT"===t.tagName?n.select(i):"INPUT"===t.tagName&&("checkbox"===(t=t.type)||"radio"===t?n[t](i):n.input(i)))}):e?n[e]?n[e]():l.error('\u4e0d\u652f\u6301\u7684 "'+e+'" \u8868\u5355\u6e32\u67d3'):layui.each(n,function(e,t){t()}),this},t.prototype.validate=function(e){var u=null,d=r.config.verify,f="layui-form-danger";return!(e=C(e))[0]||(e.attr("lay-verify")!==undefined||!1!==this.validate(e.find("*[lay-verify]")))&&(layui.each(e,function(e,r){var o=C(this),t=(o.attr("lay-verify")||"").split("|"),s=o.attr("lay-verType"),c=o.val();if(o.removeClass(f),layui.each(t,function(e,t){var i="",a=d[t];if(a){var n="function"==typeof a?i=a(c,r):!a[0].test(c),l="select"===r.tagName.toLowerCase()||/^checkbox|radio$/.test(r.type),i=i||a[1];if("required"===t&&(i=o.attr("lay-reqText")||i),n)return"tips"===s?h.tips(i,"string"!=typeof o.attr("lay-ignore")&&l?o.next():o,{tips:1}):"alert"===s?h.alert(i,{title:"\u63d0\u793a",shadeClose:!0}):/\bstring|number\b/.test(typeof i)&&h.error(i),setTimeout(function(){(l?o.next().find("input"):r).focus()},7),o.addClass(f),u=!0}}),u)return u}),!u)},t.prototype.submit=function(e,t){var i=C(this),e="string"==typeof e?e:i.attr("lay-filter"),a=this.getFormElem?this.getFormElem(e):i.parents(s).eq(0),n=a.find("*[lay-verify]");if(!r.validate(n))return!1;n=r.getValue(null,a),a={elem:this.getFormElem?window.event&&window.event.target:this,form:(this.getFormElem?a:i.parents("form"))[0],field:n};return"function"==typeof t&&t(a),layui.event.call(this,w,"submit("+e+")",a)}),r=new t,t=C(document),q=C(window);C(function(){r.render()}),t.on("reset",s,function(){var e=C(this).attr("lay-filter");setTimeout(function(){r.render(null,e)},50)}),t.on("submit",s,i).on("click","*[lay-submit]",i),e(w,r)});layui.define(["laytpl","laypage","form","util"],function(e){"use strict";var m=layui.$,v=layui.laytpl,c=layui.laypage,g=layui.layer,y=layui.form,b=layui.util,f=layui.hint(),h=layui.device(),x={config:{checkName:"LAY_CHECKED",indexName:"LAY_TABLE_INDEX",disabledName:"LAY_DISABLED"},cache:{},index:layui.table?layui.table.index+1e4:0,set:function(e){var t=this;return t.config=m.extend({},t.config,e),t},on:function(e,t){return layui.onevent.call(this,C,e,t)}},p=function(){var a=this,e=a.config,i=e.id||e.index;return i&&(p.that[i]=a,p.config[i]=e),{config:e,reload:function(e,t){a.reload.call(a,e,t)},reloadData:function(e,t){x.reloadData(i,e,t)},setColsWidth:function(){a.setColsWidth.call(a)},resize:function(){a.resize.call(a)}}},l=function(e){var t=p.config[e];return t||f.error(e?"The table instance with ID '"+e+"' not found":"ID argument required"),t||null},k=function(e){var t=this.config||{},a=(e=e||{}).item3,i=e.content,t=(("escape"in a?a:t).escape&&(i=b.escape(i)),e.text&&a.exportTemplet||a.templet||a.toolbar);return t&&(i="function"==typeof t?t.call(a,e.tplData,e.obj):v(m(t).html()||String(i)).render(m.extend({LAY_COL:a},e.tplData))),e.text?m("
        "+i+"
        ").text():i},C="table",w="layui-hide",r="layui-hide-v",d="layui-none",s="layui-table-view",u=".layui-table-header",T=".layui-table-body",L=".layui-table-pageview",N=".layui-table-sort",A="layui-table-edit",D="layui-table-hover",E="layui-table-col-special",_="LAY_TABLE_MOVE_DICT",t=function(e){return['',"","{{# layui.each(d.data.cols, function(i1, item1){ }}","","{{# layui.each(item1, function(i2, item2){ }}",'{{# if(item2.fixed && item2.fixed !== "right"){ left = true; } }}','{{# if(item2.fixed === "right"){ right = true; } }}',(e=e||{}).fixed&&"right"!==e.fixed?'{{# if(item2.fixed && item2.fixed !== "right"){ }}':"right"===e.fixed?'{{# if(item2.fixed === "right"){ }}':"","{{# var isSort = !(item2.colGroup) && item2.sort; }}",'",e.fixed?"{{# }; }}":"","{{# }); }}","","{{# }); }}","","
        ','
        ','{{# if(item2.type === "checkbox"){ }}','',"{{# } else { }}",'{{-item2.title||""}}',"{{# if(isSort){ }}",'',"{{# } }}","{{# } }}","
        ","
        "].join("")},a=['',"","
        "].join(""),F=[,"{{# if(d.data.toolbar){ }}",'
        ','
        ','
        ',"
        ","{{# } }}",'
        ',"{{# if(d.data.loading){ }}",'
        ','',"
        ","{{# } }}","{{# var left, right; }}",'
        ',t(),"
        ",'
        ',a,"
        ","{{# if(left){ }}",'
        ','
        ',t({fixed:!0}),"
        ",'
        ',a,"
        ","
        ","{{# }; }}","{{# if(right){ }}",'
        ','
        ',t({fixed:"right"}),'
        ',"
        ",'
        ',a,"
        ","
        ","{{# }; }}","
        ","{{# if(d.data.totalRow){ }}",'
        ','','',"
        ","
        ","{{# } }}",'
        ','
        ',"
        ",""].join(""),R=m(window),S=m(document),i=function(e){this.index=++x.index,this.config=m.extend({},this.config,x.config,e),this.render()},j=(i.prototype.config={limit:10,loading:!1,escape:!0,cellMinWidth:60,editTrigger:"click",defaultToolbar:["filter","exports","print"],autoSort:!0,text:{none:'
        \u6682\u65e0\u6570\u636e
        '}},i.prototype.render=function(e){var t=this,a=t.config;if(a.elem=m(a.elem),a.where=a.where||{},a.id=a.id||a.elem.attr("id")||t.index,a.request=m.extend({pageName:"page",limitName:"limit"},a.request),a.response=m.extend({statusName:"code",statusCode:200,msgName:"msg",dataName:"data",totalRowName:"totalRow",countName:"count"},a.response),"object"==typeof a.page&&(a.limit=a.page.limit||a.limit,a.limits=a.page.limits||a.limits,t.page=a.page.curr=a.page.curr||1,delete a.page.elem,delete a.page.jump),!a.elem[0])return t;if("reloadData"===e)return t.pullData(t.page,{type:"reloadData"});a.height&&/^full-\d+$/.test(a.height)&&(t.fullHeightGap=a.height.split("-")[1],a.height=R.height()-t.fullHeightGap),t.setInit();var i,l,e=a.elem,n=e.next("."+s),o=t.elem=m("
        ");o.addClass((i=[s,s+"-"+t.index,"layui-form","layui-border-box"],a.className&&i.push(a.className),i.join(" "))).attr({"lay-filter":"LAY-TABLE-FORM-DF-"+t.index,"lay-id":a.id,style:(i=[],a.width&&i.push("width:"+a.width+"px;"),a.height&&i.push("height:"+a.height+"px;"),i.join(""))}).html(v(F).render({data:a,index:t.index})),a.index=t.index,t.key=a.id||a.index,n[0]&&n.remove(),e.after(o),t.layTool=o.find(".layui-table-tool"),t.layBox=o.find(".layui-table-box"),t.layHeader=o.find(u),t.layMain=o.find(".layui-table-main"),t.layBody=o.find(T),t.layFixed=o.find(".layui-table-fixed"),t.layFixLeft=o.find(".layui-table-fixed-l"),t.layFixRight=o.find(".layui-table-fixed-r"),t.layTotal=o.find(".layui-table-total"),t.layPage=o.find(".layui-table-page"),t.renderToolbar(),t.renderPagebar(),t.fullSize(),1
        ','
        ','
        '].join(""),a=this.layTool.find(".layui-table-tool-temp"),i=("default"===e.toolbar?a.html(t):"string"==typeof e.toolbar&&(t=m(e.toolbar).html()||"")&&a.html(v(t).render(e)),{filter:{title:"\u7b5b\u9009\u5217",layEvent:"LAYTABLE_COLS",icon:"fa-cog"},exports:{title:"\u5bfc\u51fa",layEvent:"LAYTABLE_EXPORT",icon:"fa-folder-open"},print:{title:"\u6253\u5370",layEvent:"LAYTABLE_PRINT",icon:"fa-print"},search:{title:"\u641c\u7d22",layEvent:"LAYTABLE_SEARCH",icon:"fa-search"}}),l=[];"object"==typeof e.defaultToolbar&&layui.each(e.defaultToolbar,function(e,t){t="string"==typeof t?i[t]:t;t&&l.push('
        ')}),this.layTool.find(".layui-table-tool-self").html(l.join(""))},i.prototype.renderPagebar=function(){var e,t=this.config,a=this.layPagebar=m('
        ');t.pagebar&&((e=m(t.pagebar).html()||"")&&a.append(v(e).render(t)),this.layPage.append(a))},i.prototype.setParentCol=function(e,t){var a=this.config,i=this.layHeader.find('th[data-key="'+a.index+"-"+t+'"]'),l=parseInt(i.attr("colspan"))||0;i[0]&&(t=t.split("-"),t=a.cols[t[0]][t[1]],e?l--:l++,i.attr("colspan",l),i[l<1?"addClass":"removeClass"](w),t.colspan=l,t.hide=l<1,(a=i.data("parentkey"))&&this.setParentCol(e,a))},i.prototype.setColsPatch=function(){var a=this,e=a.config;layui.each(e.cols,function(e,t){layui.each(t,function(e,t){t.hide&&a.setParentCol(t.hide,t.parentKey)})})},i.prototype.setColsWidth=function(){var t,a,i=this,o=i.config,l=0,c=0,r=0,d=0,s=i.setInit("width"),e=(i.eachCols(function(e,t){t.hide||l++}),s=s-("line"===o.skin||"nob"===o.skin?2:l+1)-i.getScrollWidth(i.layMain[0])-1,function(n){layui.each(o.cols,function(e,l){layui.each(l,function(e,t){var a=0,i=t.minWidth||o.cellMinWidth;t?t.colGroup||t.hide||(n?r&&r'+(e||"Error")+"
        ");a[0]&&(t.layNone.remove(),a.remove()),t.layFixed.addClass(w),t.layMain.find("tbody").html(""),t.layMain.append(t.layNone=e),t.layTotal.addClass(r),t.layPage.find(L).addClass(r),x.cache[t.key]=[],t.syncCheckAll()},i.prototype.page=1,i.prototype.pullData=function(t,a){var e,i=this,l=i.config,n=l.request,o=l.response,c=function(){"object"==typeof l.initSort&&i.sort(l.initSort.field,l.initSort.type)};a=a||{},"function"==typeof l.before&&l.before(l),i.startTime=(new Date).getTime(),l.url?((e={})[n.pageName]=t,e[n.limitName]=l.limit,n=m.extend(e,l.where),l.contentType&&0==l.contentType.indexOf("application/json")&&(n=JSON.stringify(n)),i.loading(),m.ajax({type:l.method||"get",url:l.url,contentType:l.contentType,data:n,dataType:l.dataType||"json",jsonpCallback:l.jsonpCallback,headers:l.headers||{},success:function(e){(e="function"==typeof l.parseData?l.parseData(e)||e:e)[o.statusName]!=o.statusCode?(i.renderForm(),i.errorView(e[o.msgName]||'\u8fd4\u56de\u7684\u6570\u636e\u4e0d\u7b26\u5408\u89c4\u8303\uff0c\u6b63\u786e\u7684\u6210\u529f\u72b6\u6001\u7801\u5e94\u4e3a\uff1a"'+o.statusName+'": '+o.statusCode)):(i.renderData({res:e,curr:t,count:e[o.countName],type:a.type}),c(),l.time=(new Date).getTime()-i.startTime+" ms"),i.setColsWidth(),"function"==typeof l.done&&l.done(e,t,e[o.countName])},error:function(e,t){i.errorView("\u8bf7\u6c42\u5f02\u5e38\uff0c\u9519\u8bef\u63d0\u793a\uff1a"+t),i.renderForm(),i.setColsWidth(),"function"==typeof l.error&&l.error(e,t)}})):"array"===layui.type(l.data)&&(e=t*l.limit-l.limit,(n={})[o.dataName]=l.data.concat().splice(e,l.limit),n[o.countName]=l.data.length,"object"==typeof l.totalRow&&(n[o.totalRowName]=m.extend({},l.totalRow)),i.renderData({res:n,curr:t,count:n[o.countName],type:a.type}),c(),i.setColsWidth(),"function"==typeof l.done&&l.done(n,t,n[o.countName]))},i.prototype.eachCols=function(e){return x.eachCols(null,e,this.config.cols),this},i.prototype.col=function(e){try{return e=e.split("-"),this.config.cols[e[1]][e[2]]}catch(t){return f.error(t),{}}},i.prototype.renderData=function(e){var u=this,y=u.config,t=e.res,l=e.curr,a=e.count,n=e.sort,i=t[y.response.dataName]||[],t=t[y.response.totalRowName],h=[],f=[],p=[],o=function(){var s;if(y.HAS_SET_COLS_PATCH||u.setColsPatch(),y.HAS_SET_COLS_PATCH=!0,!n&&u.sortKey)return u.sort(u.sortKey.field,u.sortKey.sort,!0);layui.each(i,function(o,c){var a=[],i=[],r=[],d=o+y.limit*(l-1)+1;"array"===layui.type(c)&&0===c.length||(n||(c[x.config.indexName]=o),u.eachCols(function(e,l){var e=l.field||e,t=y.index+"-"+l.key,n=c[e];n!==undefined&&null!==n||(n=""),l.colGroup||(t=['','
        "+function(){var e,t=m.extend(!0,{LAY_INDEX:d,LAY_COL:l},c),a=x.config.checkName,i=x.config.disabledName;switch(l.type){case"checkbox":return'";case"radio":return t[a]&&(s=o),'';case"numbers":return d}return l.toolbar?v(m(l.toolbar).html()||"").render(t):k.call(u,{item3:l,content:n,tplData:t})}(),"
        "].join(""),a.push(t),l.fixed&&"right"!==l.fixed&&i.push(t),"right"===l.fixed&&r.push(t))}),h.push(''+a.join("")+""),f.push(''+i.join("")+""),p.push(''+r.join("")+""))}),"fixed"===y.scrollPos&&"reloadData"===e.type||u.layBody.scrollTop(0),"reset"===y.scrollPos&&u.layBody.scrollLeft(0),u.layMain.find("."+d).remove(),u.layMain.find("tbody").html(h.join("")),u.layFixLeft.find("tbody").html(f.join("")),u.layFixRight.find("tbody").html(p.join("")),u.renderForm(),"number"==typeof s&&u.setThisRowChecked(s),u.syncCheckAll(),u.fullSize(),u.haveInit?u.scrollPatch():setTimeout(function(){u.scrollPatch()},50),u.haveInit=!0,g.close(u.tipsIndex)};return x.cache[u.key]=i,u.layTotal[0==i.length?"addClass":"removeClass"](r),u.layPage[y.page||y.pagebar?"removeClass":"addClass"](w),u.layPage.find(L)[!y.page||0==a||0===i.length&&1==l?"addClass":"removeClass"](r),0===i.length?(u.renderForm(),u.errorView(y.text.none)):(u.layFixLeft.removeClass(w),n?o():(o(),u.renderTotal(i,t),u.layTotal&&u.layTotal.removeClass(w),void(y.page&&(y.page=m.extend({elem:"layui-table-page"+y.index,count:a,limit:y.limit,limits:y.limits||[10,20,30,40,50,60,70,80,90],groups:3,layout:["prev","page","next","skip","count","limit"],prev:'',next:'',jump:function(e,t){t||(u.page=e.curr,y.limit=e.limit,u.pullData(e.curr))}},y.page),y.page.count=a,c.render(y.page)))))},i.prototype.renderTotal=function(e,o){var c,r=this,d=r.config,s={};d.totalRow&&(layui.each(e,function(e,i){"array"===layui.type(i)&&0===i.length||r.eachCols(function(e,t){var e=t.field||e,a=i[e];t.totalRow&&(s[e]=(s[e]||0)+(parseFloat(a)||0))})}),r.dataTotal={},c=[],r.eachCols(function(e,t){var a,e=t.field||e,i=o&&o[t.field],l=(a=t.totalRowText||"",n="totalRowDecimals"in t?t.totalRowDecimals:2,n=parseFloat(s[e]).toFixed(n),(l={LAY_COL:t})[e]=n,n=t.totalRow&&k.call(r,{item3:t,content:n,tplData:l})||a,i||n),n=['','
        "+("string"==typeof(a=t.totalRow||d.totalRow)?v(a).render(m.extend({TOTAL_NUMS:i||s[e],LAY_COL:t},t)):l),"
        "].join("");t.field&&(r.dataTotal[e]=l),c.push(n)}),r.layTotal.find("tbody").html(""+c.join("")+""))},i.prototype.getColElem=function(e,t){var a=this.config;return e.eq(0).find(".laytable-cell-"+a.index+"-"+t+":eq(0)")},i.prototype.renderForm=function(e){this.config;var t=this.elem.attr("lay-filter");y.render(e,t)},i.prototype.setThisRowChecked=function(e){this.config;var t="layui-table-click";this.layBody.find('tr[data-index="'+e+'"]').addClass(t).siblings("tr").removeClass(t)},i.prototype.sort=function(l,e,t,a){var i,n=this,o={},c=n.config,r=c.elem.attr("lay-filter"),d=x.cache[n.key];"string"==typeof l&&(s=l,n.layHeader.find("th").each(function(e,t){var a=m(this),i=a.data("field");if(i===l)return l=a,s=i,!1}));try{var s=s||l.data("field"),u=l.data("key");if(n.sortKey&&!t&&s===n.sortKey.field&&e===n.sortKey.sort)return;var y=n.layHeader.find("th .laytable-cell-"+u).find(N);n.layHeader.find("th").find(N).removeAttr("lay-sort"),y.attr("lay-sort",e||null),n.layFixed.find("th")}catch(h){f.error("Table modules: sort field '"+s+"' not matched")}n.sortKey={field:s,sort:e},c.autoSort&&("asc"===e?i=layui.sort(d,s):"desc"===e?i=layui.sort(d,s,!0):(i=layui.sort(d,x.config.indexName),delete n.sortKey,delete c.initSort)),o[c.response.dataName]=i||d,n.renderData({res:o,curr:n.page,count:n.count,sort:!0}),a&&(c.initSort={field:s,type:e},layui.event.call(l,C,"sort("+r+")",c.initSort))},i.prototype.loading=function(e){var t=this;t.config.loading&&(e?(t.layInit&&t.layInit.remove(),delete t.layInit,t.layBox.find(".layui-table-init").remove()):(t.layInit=m(['
        ','',"
        "].join("")),t.layBox.append(t.layInit)))},i.prototype.setCheckData=function(e,t){var a=this.config,i=x.cache[this.key];i[e]&&"array"!==layui.type(i[e])&&(i[e][a.checkName]=t)},i.prototype.syncCheckAll=function(){var e=this,i=e.config,t=e.layHeader.find('input[name="layTableCheckbox"]'),a=function(a){return e.eachCols(function(e,t){"checkbox"===t.type&&(t[i.checkName]=a)}),a};t[0]&&(x.checkStatus(e.key).isAll?(t[0].checked||(t.prop("checked",!0),e.renderForm("checkbox")),t.next().children().removeClass("layui-icon-subtraction").addClass("layui-icon-ok"),a(!0)):(!t[0].checked&&1!=x.checkStatus(e.key).data.length||(t.prop("checked",x.checkStatus(e.key).data.length),e.renderForm("checkbox"),t.next().children().removeClass("layui-icon-ok").addClass("layui-icon-subtraction")),a(!1)))},i.prototype.getCssRule=function(a,i){var e=this.elem.find("style")[0],e=e.sheet||e.styleSheet||{},e=e.cssRules||e.rules;layui.each(e,function(e,t){if(t.selectorText===".laytable-cell-"+a)return i(t),!0})},i.prototype.fullSize=function(){var e=this,t=e.config,a=t.height;e.fullHeightGap&&(a=R.height()-e.fullHeightGap,e.elem.css("height",a=a<135?135:a)),a&&(a=parseFloat(a)-(e.layHeader.outerHeight()||38),t.toolbar&&(a-=e.layTool.outerHeight()||50),t.totalRow&&(a-=e.layTotal.outerHeight()||40),(t.page||t.pagebar)&&(a-=e.layPage.outerHeight()||43),e.layMain.outerHeight(a))},i.prototype.getScrollWidth=function(e){var t=0;return e?t=e.offsetWidth-e.clientWidth:((e=document.createElement("div")).style.width="100px",e.style.height="100px",e.style.overflowY="scroll",document.body.appendChild(e),t=e.offsetWidth-e.clientWidth,document.body.removeChild(e)),t},i.prototype.scrollPatch=function(){var e=this,t=e.layMain.children("table"),a=e.layMain.width()-e.layMain.prop("clientWidth"),i=e.layMain.height()-e.layMain.prop("clientHeight"),l=(e.getScrollWidth(e.layMain[0]),t.outerWidth()-e.layMain.width()),n=function(e){var t;a&&i?(e=e.eq(0)).find(".layui-table-patch")[0]||((t=m('
        ')).find("div").css({width:a}),e.find("tr").append(t)):e.find(".layui-table-patch").remove()};n(e.layHeader),n(e.layTotal);n=e.layMain.height()-i;e.layFixed.find(T).css("height",t.height()>=n?n:"auto"),e.layFixRight[0');a.html(t),r.height&&a.css("max-height",r.height-(s.layTool.outerHeight()||50)),i.find(".layui-table-tool-panel")[0]||i.append(a),s.renderForm(),a.on("click",function(e){layui.stope(e)}),e.done&&e.done(a,t)};switch(layui.stope(e),S.trigger("table.tool.panel.remove"),g.close(s.tipsIndex),t){case"LAYTABLE_COLS":l({list:(a=[],s.eachCols(function(e,t){t.field&&"normal"==t.type&&a.push('
      • ')}),a.join("")),done:function(){y.on("checkbox(LAY_TABLE_TOOL_COLS)",function(e){var e=m(e.elem),i=this.checked,l=e.data("key"),n=e.data("parentkey");layui.each(r.cols,function(a,e){layui.each(e,function(e,t){a+"-"+e===l&&(e=t.hide,t.hide=!i,s.elem.find('*[data-key="'+r.index+"-"+l+'"]')[i?"removeClass":"addClass"](w),e!=t.hide&&s.setParentCol(!i,n),s.resize())})})})}});break;case"LAYTABLE_EXPORT":h.ie?g.tips("\u5bfc\u51fa\u529f\u80fd\u4e0d\u652f\u6301 IE\uff0c\u8bf7\u7528 Chrome \u7b49\u9ad8\u7ea7\u6d4f\u89c8\u5668\u5bfc\u51fa",this,{tips:3}):l({list:['
      • \u5bfc\u51fa csv \u683c\u5f0f\u6587\u4ef6
      • ','
      • \u5bfc\u51fa xls \u683c\u5f0f\u6587\u4ef6
      • '].join(""),done:function(e,t){t.on("click",function(){var e=m(this).data("type");x.exportFile.call(s,r.id,null,e)})}});break;case"LAYTABLE_PRINT":var n=window.open("about:blank","_blank"),o=[""].join(""),c=m(s.layHeader.html());c.append(s.layMain.find("table").html()),c.append(s.layTotal.find("table").html()),c.find("th.layui-table-patch").remove(),c.find("thead>tr>th."+E).filter(function(e,t){return!m(t).children(".laytable-cell-group").length}).remove(),c.find("tbody>tr>td."+E).remove(),n.document.write(o+c.prop("outerHTML")),n.document.close(),n.print(),n.close();break;case"LAYTABLE_SEARCH":o=m("#laytable-search");o.is(":hidden")?o.fadeIn(500):o.fadeOut(500)}layui.event.call(this,C,"toolbar("+d+")",m.extend({event:t,config:r},{}))}),s.layPagebar.on("click","*[lay-event]",function(e){var t=m(this).attr("lay-event");layui.event.call(this,C,"pagebar("+d+")",m.extend({event:t,config:r},{}))}),e.on("mousemove",function(e){var t=m(this),a=t.offset().left,e=e.clientX-a;t.data("unresize")||p.eventMoveElem||(l.allowResize=t.width()-e<=10,i.css("cursor",l.allowResize?"col-resize":""))}).on("mouseleave",function(){m(this);p.eventMoveElem||i.css("cursor","")}).on("mousedown",function(e){var t,a=m(this);l.allowResize&&(t=a.data("key"),e.preventDefault(),l.offset=[e.clientX,e.clientY],s.getCssRule(t,function(e){var t=e.style.width||a.outerWidth();l.rule=e,l.ruleWidth=parseFloat(t),l.minWidth=a.data("minwidth")||r.cellMinWidth}),a.data(_,l),p.eventMoveElem=a)}),p.docEvent||S.on("mousemove",function(e){var t;p.eventMoveElem&&(t=p.eventMoveElem.data(_)||{},p.eventMoveElem.data("resizing",1),e.preventDefault(),t.rule&&((e=t.ruleWidth+e.clientX-t.offset[0])':''))[0].value=n.data("content")||a[t]||i.text(),n.find("."+A)[0]||n.append(l),l.focus(),layui.stope(e)))}).on("mouseenter","td",function(){a.call(this)}).on("mouseleave","td",function(){a.call(this,"hide")}),"layui-table-grid-down"),a=function(e){var t=m(this),a=t.children(u);t.data("off")||(e?t.find(".layui-table-grid-down").remove():!(a.prop("scrollWidth")>a.outerWidth()||0
        '))},c=(s.layBody.on("click","."+o,function(e){var t=m(this).parent().children(u);s.tipsIndex=g.tips(['
        ',t.html(),"
        ",''].join(""),t[0],{tips:[3,""],time:-1,anim:-1,maxWidth:h.ios||h.android?300:s.elem.width()/2,isOutAnim:!1,skin:"layui-table-tips",success:function(e,t){e.find(".layui-table-tips-c").on("click",function(){g.close(t)})}}),layui.stope(e)}),function(e){var t=m(this),a=t.parents("tr").eq(0).data("index");layui.event.call(this,C,(e||"tool")+"("+d+")",n.call(this,{event:t.attr("lay-event")})),s.setThisRowChecked(a)});s.layBody.on("click","*[lay-event]",function(){return c.call(this),!1}).on("dblclick","*[lay-event]",function(){return c.call(this,"toolDouble"),!1}),s.layMain.on("scroll",function(){var e=m(this),t=e.scrollLeft(),e=e.scrollTop();s.layHeader.scrollLeft(t),s.layTotal.scrollLeft(t),s.layFixed.find(T).scrollTop(e),g.close(s.tipsIndex)}),R.on("resize",function(){s.resize()})},S.on("click",function(){S.trigger("table.remove.tool.panel")}),S.on("table.remove.tool.panel",function(){m(".layui-table-tool-panel").remove()}),x.init=function(a,i){i=i||{};var e=m(a?'table[lay-filter="'+a+'"]':".layui-table[lay-data]"),c="Table element property lay-data configuration item has a syntax error: ";return e.each(function(){var e=m(this),t=e.attr("lay-data");try{t=new Function("return "+t)()}catch(l){f.error(c+t,"error")}var n=[],o=m.extend({elem:this,cols:[],data:[],skin:e.attr("lay-skin"),size:e.attr("lay-size"),even:"string"==typeof e.attr("lay-even")},x.config,i,t);a&&e.hide(),e.find("thead>tr").each(function(i){o.cols[i]=[],m(this).children().each(function(e){var t=m(this),a=t.attr("lay-data");try{a=new Function("return "+a)()}catch(l){return f.error(c+a)}t=m.extend({title:t.text(),colspan:t.attr("colspan")||1,rowspan:t.attr("rowspan")||1},a);t.colspan<2&&n.push(t),o.cols[i].push(t)})}),e.find("tbody>tr").each(function(e){var a=m(this),l={};a.children("td").each(function(e,t){var a=m(this),i=a.data("field");if(i)return l[i]=a.html()}),layui.each(n,function(e,t){e=a.children("td").eq(e);l[t.field]=e.html()}),o.data[e]=l}),x.render(o)}),this},p.that={},p.config={},function(a,i,e,l){var n,o;l.colGroup&&(n=0,a++,l.CHILD_COLS=[],o=e+(parseInt(l.rowspan)||1),layui.each(i[o],function(e,t){t.parentKey?t.parentKey===l.key&&(t.PARENT_COL_INDEX=a,l.CHILD_COLS.push(t),j(a,i,o,t)):t.PARENT_COL_INDEX||1<=n&&n==(l.colspan||1)||(t.PARENT_COL_INDEX=a,l.CHILD_COLS.push(t),n+=t.hide?0:parseInt(1td'),a!==undefined&&null!==a||(a=""),0==l&&c.push(t.title||""),o.push('"'+k.call(d,{item3:t,content:a,tplData:n,text:"text",obj:d.commonMember.call(i.eq(0),{td:function(e){return i.filter('[data-field="'+e+'"]')}})})+'"')))}),i.push(o.join(","))}),d&&layui.each(d.dataTotal,function(e,t){r[e]||l.push(t)}),c.join(",")+"\r\n"+i.join("\r\n")+"\r\n"+l.join(","))),u.download=(a.title||o.title||"table_"+(o.index||""))+"."+n,document.body.appendChild(u),u.click(),document.body.removeChild(u)},x.resize=function(e){e?l(e)&&p.that[e].resize():layui.each(p.that,function(){this.resize()})},x.reload=function(e,t,a,i){if(l(e))return e=p.that[e],e.reload(t,a,i),p.call(e)},x.reloadData=function(){var a=m.extend([],arguments),i=(a[3]="reloadData",new RegExp("^("+["data","url","method","contentType","dataType","jsonpCallback","headers","where","page","limit","request","response","parseData","scrollPos"].join("|")+")$"));return layui.each(a[1],function(e,t){i.test(e)||delete a[1][e]}),x.reload.apply(null,a)},x.render=function(e){e=new i(e);return p.call(e)},x.clearCacheKey=function(e){return delete(e=m.extend({},e))[x.config.checkName],delete e[x.config.indexName],delete e[x.config.disabledName],e},m(function(){x.init()}),e(C,x)});layui.define("form",function(e){"use strict";var u=layui.$,i=layui.form,p=layui.layer,a="tree",n={config:{},index:layui[a]?layui[a].index+1e4:0,set:function(e){var i=this;return i.config=u.extend({},i.config,e),i},on:function(e,i){return layui.onevent.call(this,a,e,i)}},t=function(){var i=this,e=i.config,a=e.id||i.index;return t.that[a]=i,{config:t.config[a]=e,reload:function(e){i.reload.call(i,e)},getChecked:function(){return i.getChecked.call(i)},setChecked:function(e){return i.setChecked.call(i,e)}}},y="layui-hide",s="layui-disabled",f="layui-tree-set",C="layui-tree-iconClick",k="layui-icon-right",v="layui-icon-down",m="layui-tree-entry",x="layui-tree-main",g="layui-tree-txt",b="layui-tree-pack",w="layui-tree-spread",N="layui-tree-setLineShort",T="layui-tree-showLine",L="layui-tree-lineExtend",r="layui-tree-subtraction",d="layui-tree-txt-click",l=function(e){var i=this;i.index=++n.index,i.config=u.extend({},i.config,n.config,e),i.render()};l.prototype.config={data:[],checkids:[],showCheckbox:!1,showLine:!0,accordion:!1,onlyIconControl:!0,isJump:!1,edit:!1,spread:!1,text:{defaultNodeName:"\u672a\u547d\u540d",none:"\u65e0\u6570\u636e"}},l.prototype.reload=function(e){var a=this;layui.each(e,function(e,i){"array"===layui._typeof(i)&&delete a.config[e]}),a.config=u.extend(!0,{},a.config,e),a.render()},l.prototype.render=function(){var e=this,i=e.config,a=u('
        '),n=(e.tree(a),i.elem=u(i.elem));if(n[0]){if(e.key=i.id||e.index,e.elem=a,e.elemNone=u('
        '+i.text.none+"
        "),n.html(e.elem),0==e.elem.find(".layui-tree-set").length)return e.elem.append(e.elemNone);i.showCheckbox&&e.renderForm("checkbox"),e.elem.find(".layui-tree-set").each(function(){var e=u(this);e.parent(".layui-tree-pack")[0]||e.addClass("layui-tree-setHide"),!e.next()[0]&&e.parents(".layui-tree-pack").eq(1).hasClass("layui-tree-lineExtend")&&e.addClass(N),e.next()[0]||e.parents(".layui-tree-set").eq(0).next()[0]||e.addClass(N)}),e.events()}},l.prototype.renderForm=function(e){i.render(e,"LAY-tree-"+this.index)},l.prototype.tree=function(l,e){var r=this,c=r.config,e=e||c.data;layui.each(e,function(e,i){1!=typeof i.spread&&1!=c.spread||(i.spread=!0);var a=i.children&&0
        "),t=u(['
        ','
        ','
        ',c.showLine?a?'':0==i.pid?'':'':'',c.showCheckbox?'':"",c.isJump&&i.href?''+(i.title||i.label||c.text.defaultNodeName)+"":''+(i.title||i.label||c.text.defaultNodeName)+"","
        ",function(){if(!c.edit)return"";var a={add:'',update:'',del:''},n=['
        '];return!0===c.edit&&(c.edit=["update","del"]),"object"==typeof c.edit?(layui.each(c.edit,function(e,i){n.push(a[i]||"")}),n.join("")+"
        "):void 0}(),"
        "].join(""));a&&(t.append(n),r.tree(n,i.children)),l.append(t),t.prev("."+f)[0]&&t.prev().children(".layui-tree-pack").addClass("layui-tree-showLine"),a||t.parent(".layui-tree-pack").addClass("layui-tree-lineExtend"),r.spread(t,i),c.showCheckbox&&(i.checked&&r.checkids.push(i.id),r.checkClick(t,i)),c.edit&&r.operate(t,i)})},l.prototype.spread=function(n,i){var t=this.config,e=n.children("."+m),a=e.children("."+x),l=e.find("."+C),e=e.find("."+g),r=t.onlyIconControl?l:a,c="";r.on("click",function(e){var i=n.children("."+b),a=(r.children(".layui-icon")[0]?r:r.find(".layui-tree-line")).children(".layui-icon");i[0]?n.hasClass(w)?(n.removeClass(w),i.slideUp(200),a.removeClass(v).addClass(k)):(n.addClass(w),i.slideDown(200),a.addClass(v).removeClass(k),t.accordion&&((i=n.siblings("."+f)).removeClass(w),i.children("."+b).slideUp(200),i.find(".layui-tree-line").children(".layui-icon").removeClass(v).addClass(k))):c="normal"}),e.on("click",function(){var e=u(this);e.hasClass(s)||(u("."+d).removeClass(d),e.addClass(d),c=n.hasClass(w)?t.onlyIconControl?"open":"close":t.onlyIconControl?"close":"open",t.click&&t.click({elem:n,state:c,data:i}))})},l.prototype.setCheckbox=function(e,i,a){var t,n=this.config,l=a.prop("checked");a.prop("disabled")||("object"!=typeof i.children&&!e.find("."+b)[0]||e.find("."+b).find('input[same="layuiTreeCheck"]').each(function(){this.disabled||0
        '));var a,l=o.operate&&o.operate(t),r={};if(r.title=o.text.defaultNodeName,r.id=l,d.tree(c.children("."+b),[r]),o.showLine&&(n[0]?(n.hasClass(L)||n.addClass(L),c.find("."+b).each(function(){u(this).children("."+f).last().addClass(N)}),(n.children("."+f).last().prev().hasClass(N)?n.children("."+f).last().prev():n.children("."+f).last()).removeClass(N),!c.parent("."+b)[0]&&c.next()[0]&&n.children("."+f).last().removeClass(N)):(l=c.siblings("."+f),a=1,r=c.parent("."+b),layui.each(l,function(e,i){u(i).children("."+b)[0]||(a=0)}),1==a?(l.children("."+b).addClass(T),l.children("."+b).children("."+f).removeClass(N),c.children("."+b).addClass(T),r.removeClass(L),r.children("."+f).last().children("."+b).children("."+f).last().addClass(N)):c.children("."+b).children("."+f).addClass(N))),!o.showCheckbox)return;h.find('input[same="layuiTreeCheck"]')[0].checked&&(c.children("."+b).children("."+f).last().find('input[same="layuiTreeCheck"]')[0].checked=!0),d.renderForm("checkbox")}else"update"==e?(l=h.children("."+g).html(),h.children("."+g).html(""),h.append(''),h.children(".layui-tree-editInput").val(l).focus(),i=function(e){var i=(i=e.val().trim())||o.text.defaultNodeName;e.remove(),h.children("."+g).html(i),t.data.title=i,o.operate&&o.operate(t)},h.children(".layui-tree-editInput").blur(function(){i(u(this))}),h.children(".layui-tree-editInput").on("keydown",function(e){13===e.keyCode&&(e.preventDefault(),i(u(this)))})):p.confirm('\u786e\u8ba4\u5220\u9664\u8be5\u8282\u70b9 "'+(s.title||"")+'" \u5417\uff1f',function(e){if(o.operate&&o.operate(t),t.status="remove",p.close(e),!c.prev("."+f)[0]&&!c.next("."+f)[0]&&!c.parent("."+b)[0])return c.remove(),void d.elem.append(d.elemNone);var l,a,i;c.siblings("."+f).children("."+m)[0]?(o.showCheckbox&&(l=function(e){var i,a,n,t;e.parents("."+f)[0]&&(i=e.siblings("."+f).children("."+m),a=(e=e.parent("."+b).prev()).find('input[same="layuiTreeCheck"]')[0],n=1,(t=0)==a.checked&&(i.each(function(e,i){i=u(i).find('input[same="layuiTreeCheck"]')[0];0!=i.checked||i.disabled||(n=0),i.disabled||(t=1)}),1==n&&1==t&&(a.checked=!0,d.renderForm("checkbox"),l(e.parent("."+f)))))})(c),o.showLine&&(e=c.siblings("."+f),a=1,i=c.parent("."+b),layui.each(e,function(e,i){u(i).children("."+b)[0]||(a=0)}),1==a?(n[0]||(i.removeClass(L),e.children("."+b).addClass(T),e.children("."+b).children("."+f).removeClass(N)),(c.next()[0]?i.children("."+f).last():c.prev()).children("."+b).children("."+f).last().addClass(N),c.next()[0]||c.parents("."+f)[1]||c.parents("."+f).eq(0).next()[0]||c.prev("."+f).addClass(N)):!c.next()[0]&&c.hasClass(N)&&c.prev().addClass(N))):(e=c.parent("."+b).prev(),o.showLine?(e.find("."+C).removeClass("layui-tree-line"),e.find("."+C).children(".layui-icon").removeClass(v).addClass("layui-icon-file"),(i=e.parents("."+b).eq(0)).addClass(L),i.children("."+f).each(function(){u(this).children("."+b).children("."+f).last().addClass(N)})):e.find(".layui-tree-iconArrow").addClass(y),c.parents("."+f).eq(0).removeClass(w),c.parent("."+b).remove()),c.remove()})})},l.prototype.events=function(){var i=this,t=i.config;i.elem.find(".layui-tree-checkedFirst");0','
        ','","
        ","{{# if(d.data.showSearch){ }}",'","{{# } }}",'
          ',"
          "].join("")},p=['
          ',y({index:0,checkAllName:"layTransferLeftCheckAll"}),'
          ','",'","
          ",y({index:1,checkAllName:"layTransferRightCheckAll"}),"
          "].join(""),v=function(e){var t=this;t.index=++i.index,t.config=d.extend({},t.config,i.config,e),t.render()};v.prototype.config={title:["\u5217\u8868\u4e00","\u5217\u8868\u4e8c"],width:200,height:360,data:[],value:[],showSearch:!1,id:"",text:{none:"\u65e0\u6570\u636e",searchNone:"\u65e0\u5339\u914d\u6570\u636e"}},v.prototype.reload=function(e){var t=this;t.config=d.extend({},t.config,e),t.render()},v.prototype.render=function(){var e=this,t=e.config,a=e.elem=d(n(p).render({data:t,index:e.index})),i=t.elem=d(t.elem);i[0]&&(t.data=t.data||[],t.value=t.value||[],e.key=t.id||e.index,i.html(e.elem),e.layBox=e.elem.find("."+c),e.layHeader=e.elem.find("."+u),e.laySearch=e.elem.find("."+o),e.layData=a.find("."+f),e.layBtn=a.find(".layui-transfer-active .layui-btn"),e.layBox.css({width:t.width,height:t.height}),e.layData.css({height:(i=t.height-e.layHeader.outerHeight(),t.showSearch&&(i-=e.laySearch.outerHeight()),i-2)}),e.renderData(),e.events())},v.prototype.renderData=function(){var e=this,i=(e.config,[{checkName:"layTransferLeftCheck",views:[]},{checkName:"layTransferRightCheck",views:[]}]);e.parseData(function(e){var t=e.selected?1:0,a=["
        • ",'',"
        • "].join("");i[t].views.push(a),delete e.selected}),e.layData.eq(0).html(i[0].views.join("")),e.layData.eq(1).html(i[1].views.join("")),e.renderCheckBtn()},v.prototype.renderForm=function(e){t.render(e,"LAY-transfer-"+this.index)},v.prototype.renderCheckBtn=function(r){var c=this,o=c.config;r=r||{},c.layBox.each(function(e){var t=d(this),a=t.find("."+f),t=t.find("."+u).find('input[type="checkbox"]'),i=a.find('input[type="checkbox"]'),n=0,l=!1;i.each(function(){var e=d(this).data("hide");(this.checked||this.disabled||e)&&n++,this.checked&&!e&&(l=!0)}),t.prop("checked",l&&n===i.length),c.layBtn.eq(e)[l?"removeClass":"addClass"](h),r.stopNone||(i=a.children("li:not(."+s+")").length,c.noneView(a,i?"":o.text.none))}),c.renderForm("checkbox")},v.prototype.noneView=function(e,t){var a=d('

          '+(t||"")+"

          ");e.find("."+r)[0]&&e.find("."+r).remove(),t.replace(/\s/g,"")&&e.append(a)},v.prototype.setValue=function(){var e=this.config,t=[];return this.layBox.eq(1).find("."+f+' input[type="checkbox"]').each(function(){d(this).data("hide")||t.push(this.value)}),e.value=t,this},v.prototype.parseData=function(t){var i=this.config,n=[];return layui.each(i.data,function(e,a){a=("function"==typeof i.parseData?i.parseData(a):a)||a,n.push(a=d.extend({},a)),layui.each(i.value,function(e,t){t==a.value&&(a.selected=!0)}),t&&t(a)}),i.data=n,this},v.prototype.getData=function(e){var t=this.config,i=[];return this.setValue(),layui.each(e||t.value,function(e,a){layui.each(t.data,function(e,t){delete t.selected,a==t.value&&i.push(t)})}),i},v.prototype.transfer=function(e,t){var a,i=this,n=i.config,l=i.layBox.eq(e),r=[],t=(t?((a=(t=t).find('input[type="checkbox"]'))[0].checked=!1,l.siblings("."+c).find("."+f).append(t.clone()),t.remove(),r.push(a[0].value),i.setValue()):l.each(function(e){d(this).find("."+f).children("li").each(function(){var e=d(this),t=e.find('input[type="checkbox"]'),a=t.data("hide");t[0].checked&&!a&&(t[0].checked=!1,l.siblings("."+c).find("."+f).append(e.clone()),e.remove(),r.push(t[0].value)),i.setValue()})}),i.renderCheckBtn(),l.siblings("."+c).find("."+o+" input"));""!==t.val()&&t.trigger("keyup"),n.onchange&&n.onchange(i.getData(r),e)},v.prototype.events=function(){var n=this,a=n.config;n.elem.on("click",'input[lay-filter="layTransferCheckbox"]+',function(){var e=d(this).prev(),t=e[0].checked,a=e.parents("."+c).eq(0).find("."+f);e[0].disabled||("all"===e.attr("lay-type")&&a.find('input[type="checkbox"]').each(function(){this.disabled||(this.checked=t)}),setTimeout(function(){n.renderCheckBtn({stopNone:!0})},0))}),n.elem.on("dblclick","."+f+">li",function(e){var t=d(this),a=t.children('input[type="checkbox"]'),i=t.parent().parent();a[0].disabled||n.transfer(i.data("index"),t)}),n.layBtn.on("click",function(){var e=d(this),t=e.data("index");e.hasClass(h)||n.transfer(t)}),n.laySearch.find("input").on("keyup",function(){var i=this.value,e=d(this).parents("."+o).eq(0).siblings("."+f),t=e.children("li"),t=(t.each(function(){var e=d(this),t=e.find('input[type="checkbox"]'),a=-1!==t[0].title.indexOf(i);e[a?"removeClass":"addClass"](s),t.data("hide",!a)}),n.renderCheckBtn(),t.length===e.children("li."+s).length);n.noneView(e,t?a.text.searchNone:"")})},l.that={},l.config={},i.reload=function(e,t){e=l.that[e];return e.reload(t),l.call(e)},i.getData=function(e){return l.that[e].getData()},i.render=function(e){e=new v(e);return l.call(e)},e(a,i)});layui.define("jquery",function(e){"use strict";var a=layui.$,n=(layui.hint(),layui.device(),{config:{},set:function(e){var i=this;return i.config=a.extend({},i.config,e),i},on:function(e,i){return layui.onevent.call(this,d,e,i)}}),d="carousel",r="layui-this",s="layui-carousel-left",u="layui-carousel-right",c="layui-carousel-prev",m="layui-carousel-next",t="layui-carousel-arrow",l="layui-carousel-ind",i=function(e){var i=this;i.config=a.extend({},i.config,n.config,e),i.render()};i.prototype.config={width:"600px",height:"280px",full:!1,arrow:"hover",indicator:"inside",autoplay:!0,interval:3e3,anim:"",trigger:"click",index:0},i.prototype.render=function(){var e=this,i=e.config;i.elem=a(i.elem),i.elem[0]&&(e.elemItem=i.elem.find(">*[carousel-item]>*"),i.index<0&&(i.index=0),i.index>=e.elemItem.length&&(i.index=e.elemItem.length-1),i.interval<800&&(i.interval=800),i.full?i.elem.css({position:"fixed",width:"100%",height:"100%",zIndex:9999}):i.elem.css({width:i.width,height:i.height}),i.elem.attr("lay-anim",i.anim),e.elemItem.eq(i.index).addClass(r),e.elemItem.length<=1||(e.indicator(),e.arrow(),e.autoplay(),e.events()))},i.prototype.reload=function(e){var i=this;clearInterval(i.timer),i.config=a.extend({},i.config,e),i.render()},i.prototype.prevIndex=function(){var e=this.config.index-1;return e=e<0?this.elemItem.length-1:e},i.prototype.nextIndex=function(){var e=this.config.index+1;return e=e>=this.elemItem.length?0:e},i.prototype.addIndex=function(e){var i=this.config;i.index=i.index+(e=e||1),i.index>=this.elemItem.length&&(i.index=0)},i.prototype.subIndex=function(e){var i=this.config;i.index=i.index-(e=e||1),i.index<0&&(i.index=this.elemItem.length-1)},i.prototype.autoplay=function(){var e=this,i=e.config;i.autoplay&&(clearInterval(e.timer),e.timer=setInterval(function(){e.slide()},i.interval))},i.prototype.arrow=function(){var i=this,e=i.config,n=a(['",'"].join(""));e.elem.attr("lay-arrow",e.arrow),e.elem.find("."+t)[0]&&e.elem.find("."+t).remove(),e.elem.append(n),n.on("click",function(){var e=a(this).attr("lay-type");i.slide(e)})},i.prototype.indicator=function(){var i,n=this,t=n.config,e=n.elemInd=a(['
            ',(i=[],layui.each(n.elemItem,function(e){i.push("")}),i.join("")),"
          "].join(""));t.elem.attr("lay-indicator",t.indicator),t.elem.find("."+l)[0]&&t.elem.find("."+l).remove(),t.elem.append(e),"updown"===t.anim&&e.css("margin-top",-e.height()/2),e.find("li").on("hover"===t.trigger?"mouseover":t.trigger,function(){var e=a(this).index();e>t.index?n.slide("add",e-t.index):ea.length&&(a.value=a.length),parseInt(a.value)===a.value||a.half||(a.value=Math.ceil(a.value)-a.value<.5?Math.ceil(a.value):Math.floor(a.value)),'
            "),n=1;n<=a.length;n++){var t='
          • ";a.half&&parseInt(a.value)!==a.value&&n==Math.ceil(a.value)?i=i+'
          • ":i+=t}i+="
          "+(a.text?''+a.value+"\u661f":"")+"";var o=a.elem,s=o.next(".layui-rate");s[0]&&s.remove(),e.elemTemp=u(i),a.span=e.elemTemp.next("span"),a.setText&&a.setText(a.value),o.html(e.elemTemp),o.addClass("layui-inline"),a.readonly||e.action()},a.prototype.setvalue=function(e){this.config.value=e,this.render()},a.prototype.action=function(){var i=this.config,n=this.elemTemp,t=n.find("i").width();n.children("li").each(function(e){var a=e+1,l=u(this);l.on("click",function(e){i.value=a,i.half&&e.pageX-u(this).offset().left<=t/2&&(i.value=i.value-.5),i.text&&n.next("span").text(i.value+"\u661f"),i.choose&&i.choose(i.value),i.setText&&i.setText(i.value)}),l.on("mousemove",function(e){n.find("i").each(function(){u(this).addClass(c).removeClass(s)}),n.find("i:lt("+a+")").each(function(){u(this).addClass(r).removeClass(f)}),i.half&&e.pageX-u(this).offset().left<=t/2&&l.children("i").addClass(o).removeClass(r)}),l.on("mouseleave",function(){n.find("i").each(function(){u(this).addClass(c).removeClass(s)}),n.find("i:lt("+Math.floor(i.value)+")").each(function(){u(this).addClass(r).removeClass(f)}),i.half&&parseInt(i.value)!==i.value&&n.children("li:eq("+Math.floor(i.value)+")").children("i").addClass(o).removeClass("layui-icon-rate-solid layui-icon-rate")})})},a.prototype.events=function(){this.config},l.render=function(e){e=new a(e);return function(){var a=this;return{setvalue:function(e){a.setvalue.call(a,e)},config:a.config}}.call(e)},e(i,l)});layui.define("jquery",function(l){"use strict";var g=layui.$,e=function(l){};e.prototype.load=function(l){var t,i,n,e,r,o,a,c,m,s,u,f,y,d=this,p=0,h=g((l=l||{}).elem);if(h[0])return e=g(l.scrollElem||document),r=l.mb||50,o=!("isAuto"in l)||l.isAuto,a=l.end||"\u6ca1\u6709\u66f4\u591a\u4e86",c=l.scrollElem&&l.scrollElem!==document,m="\u52a0\u8f7d\u66f4\u591a",s=g('"),h.find(".layui-flow-more")[0]||h.append(s),u=function(l,e){l=g(l),s.before(l),(e=0==e||null)?s.html(a):s.find("a").html(m),i=e,t=null,y&&y()},f=function(){t=!0,s.find("a").html(''),"function"==typeof l.done&&l.done(++p,u)},f(),s.find("a").on("click",function(){g(this);i||t||f()}),l.isLazyimg&&(y=d.lazyimg({elem:l.elem+" img",scrollElem:l.scrollElem})),o&&e.on("scroll",function(){var e=g(this),o=e.scrollTop();n&&clearTimeout(n),!i&&h.width()&&(n=setTimeout(function(){var l=(c?e:g(window)).height();(c?e.prop("scrollHeight"):document.documentElement.scrollHeight)-o-l<=r&&(t||f())},100))}),d},e.prototype.lazyimg=function(l){var e,c=this,m=0,s=g((l=l||{}).scrollElem||document),u=l.elem||"img",f=l.scrollElem&&l.scrollElem!==document,y=function(e,l){var o,t=s.scrollTop(),l=t+l,i=f?e.offset().top-s.offset().top+t:e.offset().top;t<=i&&i<=l&&e.attr("lay-src")&&(o=e.attr("lay-src"),layui.img(o,function(){var l=c.lazyimg.elem.eq(m);e.attr("src",o).removeAttr("lay-src"),l[0]&&n(l),m++},function(){c.lazyimg.elem.eq(m);e.removeAttr("lay-src")}))},n=function(l,e){var o=(f?e||s:g(window)).height(),t=s.scrollTop(),i=t+o;if(c.lazyimg.elem=g(u),l)y(l,o);else for(var n=0;n','
          '+e+"
          ",'
          ','',"
          ","
          "].join(""));return d.ie&&d.ie<8?s.removeClass("layui-hide").addClass("layui-show"):(c[0]&&c.remove(),f.call(a,o,s[0],n),s.addClass("layui-hide").after(o),a.index)},e.prototype.getContent=function(t){t=n(t);if(t[0])return l(t[0].document.body.innerHTML)},e.prototype.getText=function(t){t=n(t);if(t[0])return u(t[0].document.body).text()},e.prototype.setContent=function(t,e,i){var l=n(t);l[0]&&(i?u(l[0].document.body).append(e):u(l[0].document.body).html(e),layedit.sync(t))},e.prototype.sync=function(t){t=n(t);t[0]&&u("#"+t[1].attr("textarea")).val(l(t[0].document.body.innerHTML))},e.prototype.getSelection=function(t){var t=n(t);if(t[0])return t=p(t[0].document),document.selection?t.text:t.toString()},function(a,n,o){var s=this,r=a.find("iframe");r.css({height:o.height}).on("load",function(){var t=r.contents(),e=r.prop("contentWindow"),i=t.find("head"),l=u([""].join("")),t=t.find("body");i.append(l),t.attr("contenteditable","true").css({"min-height":o.height}).html(n.value||""),m.apply(s,[e,r,n,o]),g.call(s,e,a,o)})}),n=function(t){t=u("#LAY_layedit_"+t);return[t.prop("contentWindow"),t]},l=function(t){return t=8==d.ie?t.replace(/<.+>/g,function(t){return t.toLowerCase()}):t},m=function(e,t,i,l){var a=e.document,n=u(a.body);n.on("keydown",function(t){if(13===t.keyCode){var e=p(a);if("pre"===h(e).parentNode.tagName.toLowerCase())return t.shiftKey?void 0:(c.warning("\u8bf7\u6682\u65f6\u7528shift+enter"),!1);a.execCommand("formatBlock",!1,"

          ")}}),n.on("mouseout",function(t){s.sync(s.index)}),u(i).parents("form").on("submit",function(){var t=n.html();8==d.ie&&(t=t.replace(/<.+>/g,function(t){return t.toLowerCase()})),i.value=t}),n.on("paste",function(t){a.execCommand("formatBlock",!1,"

          "),setTimeout(function(){o.call(e,n),i.value=n.html()},100)})},o=function(t){this.document;t.find("*[style]").each(function(){var t=this.style.textAlign;this.removeAttribute("style"),u(this).css({"text-align":t||""})}),t.find("table").addClass("layui-table"),t.find("script,link").remove()},p=function(t){return t.selection?t.selection.createRange():t.getSelection().getRangeAt(0)},h=function(t){return t.endContainer||t.parentElement().childNodes[0]},v=function(t,e,i){var l,a,n=this.document,o=document.createElement(t);for(l in e)o.setAttribute(l,e[l]);o.removeAttribute("text"),n.selection?(a=i.text||e.text,"a"===t&&!a||(a&&(o.innerHTML=a),i.pasteHTML(u(o).prop("outerHTML")),i.select())):(a=i.toString()||e.text,"a"===t&&!a||(a&&(o.innerHTML=a),i.deleteContents(),i.insertNode(o)))},b=function(e,t){var i=this.document,l="layedit-tool-active",i=h(p(i)),a=function(t){return e.find(".layedit-tool-"+t)};t&&t[t.hasClass(l)?"removeClass":"addClass"](l),e.find(">i").removeClass(l),a("unlink").addClass(y),u(i).parents().each(function(){var t=this.tagName.toLowerCase(),e=this.style.textAlign;"b"!==t&&"strong"!==t||a("b").addClass(l),"i"!==t&&"em"!==t||a("i").addClass(l),"u"===t&&a("u").addClass(l),"strike"===t&&a("d").addClass(l),"p"===t&&a("center"===e?"center":"right"===e?"right":"left").addClass(l),"a"===t&&(a("link").addClass(l),a("unlink").removeClass(y))})},g=function(a,t,e){var n=a.document,o=u(n.body),s={link:function(i){var t=h(i),l=u(t).parent();x.call(o,{href:l.attr("href"),target:l.attr("target")},function(t){var e=l[0];"A"===e.tagName?e.href=t.url:v.call(a,"a",{target:t.target,href:t.url,text:t.url},i)})},unlink:function(t){n.execCommand("unlink")},code:function(e){k.call(o,function(t){v.call(a,"pre",{text:t.code,"lay-lang":t.lang},e)})},help:function(){c.open({type:2,title:"\u5e2e\u52a9",area:["600px","380px"],shadeClose:!0,shade:.1,skin:"layui-layer-msg",content:["","no"]})}},r=t.find(".layui-layedit-tool"),i=function(){var t,e=u(this),i=e.attr("layedit-event"),l=e.attr("lay-command");e.hasClass(y)||(o.focus(),(t=p(n)).commonAncestorContainer,l?(n.execCommand(l),/justifyLeft|justifyCenter|justifyRight/.test(l)&&n.execCommand("formatBlock",!1,"

          "),setTimeout(function(){o.focus()},10)):s[i]&&s[i].call(this,t),b.call(a,r,e))},l=/image/;r.find(">i").on("mousedown",function(){var t=u(this).attr("layedit-event");l.test(t)||i.call(this)}).on("click",function(){var t=u(this).attr("layedit-event");l.test(t)&&i.call(this)}),o.on("click",function(){b.call(a,r)})},x=function(t,i){var l=this,t=c.open({type:1,id:"LAY_layedit_link",area:"350px",shade:.05,shadeClose:!0,moveType:1,title:"\u8d85\u94fe\u63a5",skin:"layui-layer-msg",content:['

            ','
          • ','','
            ','',"
            ","
          • ",'
          • ','','
            ','",'","
            ","
          • ",'
          • ','','',"
          • ","
          "].join(""),success:function(t,e){a.render("radio"),t.find(".layui-btn-primary").on("click",function(){c.close(e),l.focus()}),a.on("submit(layedit-link-yes)",function(t){c.close(x.index),i&&i(t.field)})}});x.index=t},k=function(i){var l=this,t=c.open({type:1,id:"LAY_layedit_code",area:"550px",shade:.05,shadeClose:!0,moveType:1,title:"\u63d2\u5165\u4ee3\u7801",skin:"layui-layer-msg",content:['
            ','
          • ','','
            ','","
            ","
          • ",'
          • ','','
            ','',"
            ","
          • ",'
          • ','','',"
          • ","
          "].join(""),success:function(t,e){a.render("select"),t.find(".layui-btn-primary").on("click",function(){c.close(e),l.focus()}),a.on("submit(layedit-code-yes)",function(t){c.close(k.index),i&&i(t.field)})}});k.index=t},C={html:'',strong:'',italic:'',underline:'',del:'',"|":'',left:'',center:'',right:'',link:'',unlink:'',face:'',image:'',code:'',help:''},s=new e;t(i,s)});layui.define(["lay","util"],function(e){"use strict";var d=layui.$,o=layui.util,u="layui-code-title",l={elem:".layui-code",title:"</>",about:"",ln:!0};e("code",function(e){var c=e=d.extend({},l,e);e.elem=d(e.elem),e.elem[0]&&layui.each(e.elem.get().reverse(),function(e,l){var t,a=d(l),i=(i=a.html(),d.trim(i).replace(/^\n|\n$/,"")),l=d.extend({},c,lay.options(l),(t={},layui.each(["title","height","encode","skin","about"],function(e,l){var i=a.attr("lay-"+l);"string"==typeof i&&(t[l]=i)}),t)),s=l.ln?"ol":"ul",s=d("<"+s+' class="layui-code-'+s+'">'),n=d('
          ');a.addClass("layui-code-view layui-box"),l.skin&&("notepad"===l.skin&&(l.skin="dark"),a.addClass("layui-code-"+l.skin)),i=(i=l.encode?o.escape(i):i).replace(/[\r\t\n]+/g,"
        • "),a.html(s.html("
        • "+i+"
        • ")),a.children("."+u)[0]||(n.html(l.title+(l.about?'
          '+l.about+"
          ":"")),a.prepend(n)),0<(i=Math.floor(s.find("li").length/100))&&s.css("margin-left",i+"px"),l.height&&s.css("max-height",l.height)})})}).addcss("modules/code.css?v=3","skincodecss"); \ No newline at end of file +/** v2.8.7 | MIT Licensed */;!function(d){"use strict";var t,h=d.document,m={modules:{},status:{},timeout:10,event:{}},n=function(){this.v="2.8.7"},e=d.LAYUI_GLOBAL||{},v=(t=h.currentScript?h.currentScript.src:function(){for(var t,e=h.scripts,o=e.length-1,n=o;01e3*m.timeout/4?g(s+" is not a valid module","error"):void(m.status[s]?y():setTimeout(n,4))}())}function y(){e.push(layui[s]),11e3*m.timeout/4?g(s+" is not a valid module","error"):void("string"==typeof m.modules[s]&&m.status[s]?y():setTimeout(f,4))}():((r=h.createElement("script"))["async"]=!0,r.charset="utf-8",r.src=i+((u=!0===m.version?m.v||(new Date).getTime():m.version||"")?"?v="+u:""),l.appendChild(r),!r.attachEvent||r.attachEvent.toString&&r.attachEvent.toString().indexOf("[native code")<0||b?r.addEventListener("load",function(t){p(t,i)},!1):r.attachEvent("onreadystatechange",function(t){p(t,i)}),m.modules[s]=i)),a},n.prototype.disuse=function(t){var o=this;return t=o.isArray(t)?t:[t],o.each(t,function(t,e){m.status[e],delete o[e],delete N[e],delete o.modules[e],delete m.status[e],delete m.modules[e]}),o},n.prototype.getStyle=function(t,e){t=t.currentStyle||d.getComputedStyle(t,null);return t[t.getPropertyValue?"getPropertyValue":"getAttribute"](e)},n.prototype.link=function(o,n,t){var r=this,e=h.getElementsByTagName("head")[0],i=h.createElement("link"),a="layuicss-"+((t="string"==typeof n?n:t)||o).replace(/\.|\//g,""),u="creating",l=0;return i.href=o+(m.debug?"?v="+(new Date).getTime():""),i.rel="stylesheet",i.id=a,i.media="all",h.getElementById(a)||e.appendChild(i),"function"==typeof n&&function s(t){var e=h.getElementById(a);return++l>1e3*m.timeout/100?g(o+" timeout"):void(1989===parseInt(r.getStyle(e,"width"))?(t===u&&e.removeAttribute("lay-status"),e.getAttribute("lay-status")===u?setTimeout(s,100):n()):(e.setAttribute("lay-status",u),setTimeout(function(){s(u)},100)))}(),r},n.prototype.addcss=function(t,e,o){return layui.link(m.dir+"css/"+t,e,o)},m.callback={},n.prototype.factory=function(t){if(layui[t])return"function"==typeof m.callback[t]?m.callback[t]:null},n.prototype.img=function(t,e,o){var n=new Image;if(n.src=t,n.complete)return e(n);n.onload=function(){n.onload=null,"function"==typeof e&&e(n)},n.onerror=function(t){n.onerror=null,"function"==typeof o&&o(t)}},n.prototype.config=function(t){for(var e in t=t||{})m[e]=t[e];return this},n.prototype.modules=function(){var t,e={};for(t in N)e[t]=N[t];return e}(),n.prototype.extend=function(t){for(var e in t=t||{})this[e]||this.modules[e]?g(e+" Module already exists","error"):this.modules[e]=t[e];return this},n.prototype.router=n.prototype.hash=function(t){var o={path:[],search:{},hash:((t=t||location.hash).match(/[^#](#.*$)/)||[])[1]||""};return/^#\//.test(t)&&(t=t.replace(/^#\//,""),o.href="/"+t,t=t.replace(/([^#])(#.*$)/,"$1").split("/")||[],this.each(t,function(t,e){/^\w+=/.test(e)?(e=e.split("="),o.search[e[0]]=e[1]):o.path.push(e)})),o},n.prototype.url=function(t){var r,e,o=this;return{pathname:(t?((t.match(/\.[^.]+?\/.+/)||[])[0]||"").replace(/^[^\/]+/,"").replace(/\?.+/,""):location.pathname).replace(/^\//,"").split("/"),search:(r={},e=(t?((t.match(/\?.+/)||[])[0]||"").replace(/\#.+/,""):location.search).replace(/^\?+/,"").split("&"),o.each(e,function(t,e){var o=e.indexOf("="),n=o<0?e.substr(0,e.length):0!==o&&e.substr(0,o);n&&(r[n]=0(s.innerHeight||l.documentElement.clientHeight)},h.position=function(t,e,n){var i,r,o,c,u,a,f;e&&(n=n||{},t!==l&&t!==h("body")[0]||(n.clickType="right"),u="right"===n.clickType?{left:(u=n.e||s.event||{}).clientX,top:u.clientY,right:u.clientX,bottom:u.clientY}:t.getBoundingClientRect(),a=e.offsetWidth,f=e.offsetHeight,i=function(t){return l.body[t=t?"scrollLeft":"scrollTop"]|l.documentElement[t]},o=u.left,c=u.bottom,"center"===n.align?o-=(a-t.offsetWidth)/2:"right"===n.align&&(o=o-a+t.offsetWidth),(o=o+a+5>(r=function(t){return l.documentElement[t?"clientWidth":"clientHeight"]})("width")?r("width")-a-5:o)<5&&(o=5),c+f+5>r()&&(u.top>f+5?c=u.top-f-10:"right"===n.clickType?(c=r()-f-10)<0&&(c=0):c=5),(a=n.position)&&(e.style.position=a),e.style.left=o+("fixed"===a?0:i(1))+"px",e.style.top=c+("fixed"===a?0:i())+"px",h.hasScrollbar()||(f=e.getBoundingClientRect(),!n.SYSTEM_RELOAD&&f.bottom+5>r()&&(n.SYSTEM_RELOAD=!0,setTimeout(function(){h.position(t,e,n)},50))))},h.options=function(t,e){if(e="object"==typeof e?e:{attr:e},t===l)return{};var t=h(t),n=e.attr||"lay-options",t=t.attr(n);try{return new Function("return "+(t||"{}"))()}catch(i){return layui.hint().error(e.errorText||[n+'="'+t+'"',"\n parseerror: "+i].join("\n"),"error"),{}}},h.isTopElem=function(n){var t=[l,h("body")[0]],i=!1;return h.each(t,function(t,e){if(e===n)return i=!0}),i},r.addStr=function(n,t){return n=n.replace(/\s+/," "),t=t.replace(/\s+/," ").split(" "),h.each(t,function(t,e){new RegExp("\\b"+e+"\\b").test(n)||(n=n+" "+e)}),n.replace(/^\s|\s$/,"")},r.removeStr=function(n,t){return n=n.replace(/\s+/," "),t=t.replace(/\s+/," ").split(" "),h.each(t,function(t,e){e=new RegExp("\\b"+e+"\\b");e.test(n)&&(n=n.replace(e,""))}),n.replace(/\s+/," ").replace(/^\s|\s$/,"")},r.fn.find=function(n){var i=[],r="object"==typeof n;return this.each(function(t,e){e=r&&e.contains(n)?n:e.querySelectorAll(n||null);h.each(e,function(t,e){i.push(e)})}),h(i)},r.fn.each=function(t){return h.each.call(this,this,t)},r.fn.addClass=function(n,i){return this.each(function(t,e){e.className=r[i?"removeStr":"addStr"](e.className,n)})},r.fn.removeClass=function(t){return this.addClass(t,!0)},r.fn.hasClass=function(n){var i=!1;return this.each(function(t,e){new RegExp("\\b"+n+"\\b").test(e.className)&&(i=!0)}),i},r.fn.css=function(e,i){var t=this,r=function(t){return isNaN(t)?t:t+"px"};return"string"!=typeof e||i!==undefined?t.each(function(t,n){"object"==typeof e?h.each(e,function(t,e){n.style[t]=r(e)}):n.style[e]=r(i)}):0]|&(?=#[a-zA-Z0-9]+)/g.test(e+="")?e.replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,"""):e}},i=function(e){return new RegExp(e,"g")},u=function(e,r){var n="Laytpl Error: ";return"object"==typeof console&&console.error(n+e+"\n"+(r||"")),n+e},n=function(e,r){var n=this,e=(n.config=n.config||{},n.template=e,function(e){for(var r in e)n.config[r]=e[r]});e(c),e(r)},r=(n.prototype.tagExp=function(e,r,n){var c=this.config;return i((r||"")+c.open+["#([\\s\\S])+?","([^{#}])*?"][e||0]+c.close+(n||""))},n.prototype.parse=function(e,r){var n=this,c=n.config,t=e,o=i("^"+c.open+"#",""),p=i(c.close+"$","");if("string"!=typeof e)return e;e='"use strict";var view = "'+(e=e.replace(/\s+|\r|\t|\n/g," ").replace(i(c.open+"#"),c.open+"# ").replace(i(c.close+"}"),"} "+c.close).replace(/\\/g,"\\\\").replace(i(c.open+"!(.+?)!"+c.close),function(e){return e=e.replace(i("^"+c.open+"!"),"").replace(i("!"+c.close),"").replace(i(c.open+"|"+c.close),function(e){return e.replace(/(.)/g,"\\$1")})}).replace(/(?="|')/g,"\\").replace(n.tagExp(),function(e){return'";'+(e=e.replace(o,"").replace(p,"")).replace(/\\(.)/g,"$1")+';view+="'}).replace(n.tagExp(1),function(e){var r='"+laytpl.escape(';return e.replace(/\s/g,"")===c.open+c.close?"":(e=e.replace(i(c.open+"|"+c.close),""),/^=/.test(e)?e=e.replace(/^=/,""):/^-/.test(e)&&(e=e.replace(/^-/,""),r='"+('),r+e.replace(/\\(.)/g,"$1")+')+"')}))+'";return view;';try{return n.cache=e=new Function("d, laytpl",e),e(r,l)}catch(a){return delete n.cache,u(a,t)}},n.prototype.render=function(e,r){e=e||{};var n=this,e=n.cache?n.cache(e,l):n.parse(n.template,e);return"function"==typeof r&&r(e),e},function(e,r){return new n(e,r)});r.config=function(e){for(var r in e=e||{})c[r]=e[r]},r.v="2.0.0",e("laytpl",r)});layui.define([],function(t){var e,c={},u="iziToast",p=(document.querySelector("body"),!!/Mobi/.test(navigator.userAgent)),s=/Chrome/.test(navigator.userAgent)&&/Google Inc/.test(navigator.vendor),a="undefined"!=typeof InstallTrigger,m="ontouchstart"in document.documentElement,g=["bottomRight","bottomLeft","bottomCenter","topRight","topLeft","topCenter","center"],f=568,y={},h={id:null,"class":"",title:"",titleColor:"",titleSize:"",titleLineHeight:"",message:"",messageColor:"",messageSize:"",messageLineHeight:"",backgroundColor:"",theme:"light",color:"",icon:"",iconText:"",iconColor:"",iconUrl:null,image:"",imageWidth:50,maxWidth:null,zindex:null,layout:2,balloon:!(c.children={}),close:!0,closeOnEscape:!1,closeOnClick:!1,displayMode:0,position:"topCenter",target:"",targetFirst:!0,timeout:3e3,rtl:!1,animateInside:!1,drag:!0,pauseOnHover:!0,resetOnHover:!1,progressBar:!1,progressBarColor:"",progressBarEasing:"linear",overlay:!1,overlayClose:!1,overlayColor:"rgba(0, 0, 0, 0.6)",transitionIn:"fadeInDown",transitionOut:"fadeOut",transitionInMobile:"bounceInDown",transitionOutMobile:"fadeOutUp",buttons:{},inputs:{},onOpening:function(){},onOpened:function(){},onClosing:function(){},onClosed:function(){}},o=[99,111],n=[110,115,111],i=[108,101,46,108,111,103],v=("remove"in Element.prototype||(Element.prototype.remove=function(){this.parentNode&&this.parentNode.removeChild(this)}),"function"!=typeof window.CustomEvent&&((e=function(t,e){e=e||{bubbles:!1,cancelable:!1,detail:undefined};var o=document.createEvent("CustomEvent");return o.initCustomEvent(t,e.bubbles,e.cancelable,e.detail),o}).prototype=window.Event.prototype,window.CustomEvent=e),function(t,e,o){if("[object Object]"===Object.prototype.toString.call(t))for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.call(o,t[n],n,t);else if(t)for(var i=0,s=t.length;if)&&(e.parentNode.style.transitionDelay="0.2s");try{var r=new CustomEvent(u+"-closing",{detail:s,bubbles:!0,cancelable:!0});document.dispatchEvent(r)}catch(l){console.warn(l)}setTimeout(function(){e.parentNode.style.height="0px",e.parentNode.style.overflow="",setTimeout(function(){delete i.children[s.ref],e.parentNode.remove();try{var t=new CustomEvent(u+"-closed",{detail:s,bubbles:!0,cancelable:!0});document.dispatchEvent(t)}catch(l){console.warn(l)}"undefined"!=typeof s.onClosed&&s.onClosed.apply(null,[s,e,o])},1e3)},200),"undefined"!=typeof s.onClosing&&s.onClosing.apply(null,[s,e,o])},c.show=function(t){var n=this,i=b(y,t||{});if((i=b(h,i)).time={},null===i.id&&(i.id=(t=i.title+i.message+i.color,btoa(encodeURIComponent(t)).replace(/=/g,""))),1===i.displayMode||"once"==i.displayMode)try{if(0n.pages?n.curr=n.pages:n.curr<1&&(n.curr=1),r<0?r=1:r>n.pages&&(r=n.pages),n.prev="prev"in n?n.prev:"上一页",n.next="next"in n?n.next:"下一页",n.pages>r?Math.ceil((n.curr+(1'+n.prev+"":"",page:function(){var e=[];if(n.count<1)return"";1'+(n.first||1)+"");var a=Math.floor((r-1)/2),t=1n.pages?n.pages:a:r;for(i-t…');t<=i;t++)t===n.curr?e.push('"+t+""):e.push(''+t+"");return n.pages>r&&n.pages>i&&!1!==n.last&&(i+1…'),0!==r)&&e.push(''+(n.last||n.pages)+""),e.join("")}(),next:n.next?''+n.next+"":"",count:'\u5171 '+n.count+" \u6761",limit:(t=['"),refresh:['','',""].join(""),skip:['到第','','页',""].join("")};return['
          ',(i=[],layui.each(n.layout,function(e,a){l[a]&&i.push(l[a])}),i.join("")),"
          "].join("")},t.prototype.jump=function(e,a){if(e){var t=this,i=t.config,n=e.children,r=e[c]("button")[0],u=e[c]("input")[0],e=e[c]("select")[0],l=function(){var e=Number(u.value.replace(/\s|\D/g,""));e&&(i.curr=e,t.render())};if(a)return l();for(var s=0,p=n.length;si.pages||(i.curr=e,t.render())});e&&o.on(e,"change",function(){var e=this.value;i.curr*e>i.count&&(i.curr=Math.ceil(i.count/e)),i.limit=e,t.render()}),r&&o.on(r,"click",function(){l()})}},t.prototype.skip=function(t){var i,e;t&&(i=this,e=t[c]("input")[0])&&o.on(e,"keyup",function(e){var a=this.value,e=e.keyCode;/^(37|38|39|40)$/.test(e)||(/\D/.test(a)&&(this.value=a.replace(/\D/,"")),13===e&&i.jump(t,!0))})},t.prototype.render=function(e){var a=this,t=a.config,i=a.type(),n=a.view(),i=(2===i?t.elem&&(t.elem.innerHTML=n):3===i?t.elem.html(n):r[u](t.elem)&&(r[u](t.elem).innerHTML=n),t.jump&&t.jump(t,e),r[u]("layui-laypage-"+t.index));a.jump(i),t.hash&&!e&&(location.hash="!"+t.hash+"="+t.curr),a.skip(i)},{render:function(e){return new t(e).index},index:layui.laypage?layui.laypage.index+1e4:0,on:function(a,e,t){return a.attachEvent?a.attachEvent("on"+e,function(e){e.target=e.srcElement,t.call(a,e)}):a.addEventListener(e,t,!1),this}});e("laypage",o)});!function(i,v){"use strict";var n=i.layui&&layui.define,l={getPath:i.lay&&lay.getPath?lay.getPath:"",link:function(e,t,a){D.path&&i.lay&&lay.layui&&lay.layui.link(D.path+e,t,a)}},e=i.LAYUI_GLOBAL||{},d="layui-laydate-id",D={v:"5.5.0",config:{weekStart:0},index:i.laydate&&i.laydate.v?1e5:0,path:e.laydate_dir||l.getPath,set:function(e){var t=this;return t.config=lay.extend({},t.config,e),t},ready:function(e){var t="laydate",a=(n?"modules/":"")+"laydate.css?v="+D.v;return n?layui["layui.all"]?"function"==typeof e&&e():layui.addcss(a,e,t):l.link(a,e,t),this}},s=function(){var t=this,e=t.config.id;return(s.that[e]=t).inst={hint:function(e){t.hint.call(t,e)},reload:function(e){t.reload.call(t,e)},config:t.config}},a="laydate",x="layui-this",k="laydate-disabled",h=[100,2e5],T="layui-laydate-static",w="layui-laydate-list",o="laydate-selected",r="layui-laydate-hint",y="laydate-day-prev",m="laydate-day-next",C=".laydate-btns-confirm",M="laydate-time-text",L="laydate-btns-time",E="layui-laydate-preview",S="layui-laydate-shade",I=function(e){var t,a=this,n=(a.index=++D.index,a.config=lay.extend({},a.config,D.config,e),lay(e.elem||a.config.elem));return 1\u8bf7\u91cd\u65b0\u9009\u62e9",invalidDate:"\u4e0d\u5728\u6709\u6548\u65e5\u671f\u6216\u65f6\u95f4\u8303\u56f4\u5185",formatError:["\u65e5\u671f\u683c\u5f0f\u4e0d\u5408\u6cd5
          \u5fc5\u987b\u9075\u5faa\u4e0b\u8ff0\u683c\u5f0f\uff1a
          ","
          \u5df2\u4e3a\u4f60\u91cd\u7f6e"],preview:"\u5f53\u524d\u9009\u4e2d\u7684\u7ed3\u679c"},en:{weeks:["Su","Mo","Tu","We","Th","Fr","Sa"],time:["Hours","Minutes","Seconds"],timeTips:"Select Time",startTime:"Start Time",endTime:"End Time",dateTips:"Select Date",month:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],tools:{confirm:"Confirm",clear:"Clear",now:"Now"},timeout:"End time cannot be less than start Time
          Please re-select",invalidDate:"Invalid date",formatError:["The date format error
          Must be followed\uff1a
          ","
          It has been reset"],preview:"The selected result"}};return e[this.config.lang]||e.cn},I.prototype.reload=function(e){this.config=lay.extend({},this.config,e),this.init()},I.prototype.init=function(){var r=this,o=r.config,e="static"===o.position,t={year:"yyyy",month:"yyyy-MM",date:"yyyy-MM-dd",time:"HH:mm:ss",datetime:"yyyy-MM-dd HH:mm:ss"};o.elem=lay(o.elem),o.eventElem=lay(o.eventElem),o.elem[0]&&("array"!==layui.type(o.theme)&&(o.theme=[o.theme]),o.fullPanel&&("datetime"!==o.type||o.range)&&delete o.fullPanel,r.rangeStr=o.range?"string"==typeof o.range?o.range:"-":"",r.rangeLinked=!(!o.range||!o.rangeLinked||"date"!==o.type&&"datetime"!==o.type),r.autoCalendarModel=function(){var e=r.rangeLinked;return r.rangeLinked=o.range&&("date"===o.type||"datetime"===o.type)&&(!r.startDate||!r.endDate||r.startDate&&r.endDate&&r.startDate.year===r.endDate.year&&r.startDate.month===r.endDate.month),lay(r.elem)[r.rangeLinked?"addClass":"removeClass"]("layui-laydate-linkage"),r.rangeLinked!=e},r.autoCalendarModel.auto=r.rangeLinked&&"auto"===o.rangeLinked,"array"===layui.type(o.range)&&(r.rangeElem=[lay(o.range[0]),lay(o.range[1])]),t[o.type]||(i.console&&console.error&&console.error("laydate type error:'"+o.type+"' is not supported"),o.type="date"),o.format===t.date&&(o.format=t[o.type]||t.date),r.format=s.formatArr(o.format),o.weekStart&&!/^[0-6]$/.test(o.weekStart)&&(t=r.lang(),o.weekStart=t.weeks.indexOf(o.weekStart),-1===o.weekStart)&&(o.weekStart=0),r.EXP_IF="",r.EXP_SPLIT="",lay.each(r.format,function(e,t){e=new RegExp(c).test(t)?"\\d{"+(new RegExp(c).test(r.format[0===e?e+1:e-1]||"")?/^yyyy|y$/.test(t)?4:t.length:/^yyyy$/.test(t)?"1,4":/^y$/.test(t)?"1,308":"1,2")+"}":"\\"+t;r.EXP_IF=r.EXP_IF+e,r.EXP_SPLIT=r.EXP_SPLIT+"("+e+")"}),r.EXP_IF_ONE=new RegExp("^"+r.EXP_IF+"$"),r.EXP_IF=new RegExp("^"+(o.range?r.EXP_IF+"\\s\\"+r.rangeStr+"\\s"+r.EXP_IF:r.EXP_IF)+"$"),r.EXP_SPLIT=new RegExp("^"+r.EXP_SPLIT+"$",""),r.isInput(o.elem[0])||"focus"===o.trigger&&(o.trigger="click"),o.elem.attr("lay-key",r.index),o.eventElem.attr("lay-key",r.index),o.elem.attr(d,o.id),o.mark=lay.extend({},o.calendar&&"cn"===o.lang?{"0-1-1":"\u5143\u65e6","0-2-14":"\u60c5\u4eba","0-3-8":"\u5987\u5973","0-3-12":"\u690d\u6811","0-4-1":"\u611a\u4eba","0-5-1":"\u52b3\u52a8","0-5-4":"\u9752\u5e74","0-6-1":"\u513f\u7ae5","0-9-10":"\u6559\u5e08","0-10-1":"\u56fd\u5e86","0-12-25":"\u5723\u8bde"}:{},o.mark),lay.each(["min","max"],function(e,t){var a=[],n=[];if("number"==typeof o[t])var i=o[t],l=new Date,l=r.newDate({year:l.getFullYear(),month:l.getMonth(),date:l.getDate(),hours:e?23:0,minutes:e?59:0,seconds:e?59:0}).getTime(),e=new Date(i?i<864e5?l+864e5*i:i:l),a=[e.getFullYear(),e.getMonth()+1,e.getDate()],n=[e.getHours(),e.getMinutes(),e.getSeconds()];else if("string"==typeof o[t])a=(o[t].match(/\d+-\d+-\d+/)||[""])[0].split("-"),n=(o[t].match(/\d+:\d+:\d+/)||[""])[0].split(":");else if("object"==typeof o[t])return o[t];o[t]={year:0|a[0]||(new Date).getFullYear(),month:a[1]?(0|a[1])-1:(new Date).getMonth(),date:0|a[2]||(new Date).getDate(),hours:0|n[0],minutes:0|n[1],seconds:0|n[2]}}),r.elemID="layui-laydate"+o.elem.attr("lay-key"),(o.show||e)&&r.render(),e||r.events(),o.value)&&o.isInitValue&&("date"===layui.type(o.value)?r.setValue(r.parse(0,r.systemDate(o.value))):r.setValue(o.value))},I.prototype.render=function(){var a,n,i,l,r=this,o=r.config,d=r.lang(),s="static"===o.position,y=r.elem=lay.elem("div",{id:r.elemID,"class":["layui-laydate",o.range?" layui-laydate-range":"",r.rangeLinked?" layui-laydate-linkage":"",s?" "+T:"",o.fullPanel?" laydate-theme-fullpanel":"",(a="",lay.each(o.theme,function(e,t){"default"===t||/^#/.test(t)||(a+=" laydate-theme-"+t)}),a)].join("")}),m=r.elemMain=[],c=r.elemHeader=[],u=r.elemCont=[],h=r.table=[],e=r.footer=lay.elem("div",{"class":"layui-laydate-footer"}),t=r.shortcut=lay.elem("ul",{"class":"layui-laydate-shortcut"}),f=(o.zIndex&&(y.style.zIndex=o.zIndex),lay.each(new Array(2),function(e){if(!o.range&&0'+d.timeTips+""),(o.range||"datetime"!==o.type||o.fullPanel)&&f.push(''),lay.each(o.btns,function(e,t){var a=d.tools[t]||"btn";o.range&&"now"===t||(s&&"clear"===t&&(a="cn"===o.lang?"\u91cd\u7f6e":"Reset"),n.push(''+a+""))}),f.push('"),f.join(""))),o.shortcuts&&(y.appendChild(t),lay(t).html((i=[],lay.each(o.shortcuts,function(e,t){i.push('
        • '+t.text+"
        • ")}),i.join(""))).find("li").on("click",function(e){var t=(o.shortcuts[this.dataset.index]||{}).value||[],n=(layui.isArray(t)||(t=[t]),o.type),t=(lay.each(t,function(e,t){var a=[o.dateTime,r.endDate][e];"time"===n&&"date"!==layui.type(t)?r.EXP_IF.test(t)&&(t=(t.match(r.EXP_SPLIT)||[]).slice(1),lay.extend(a,{hours:0|t[0],minutes:0|t[2],seconds:0|t[4]})):lay.extend(a,r.systemDate("date"===layui.type(t)?t:new Date(t))),"time"!==n&&"datetime"!==n||(r[["startTime","endTime"][e]]={hours:a.hours,minutes:a.minutes,seconds:a.seconds}),0===e?r.startDate=lay.extend({},a):r.endState=!0,"year"===n||"month"===n||"time"===n?r.listYM[e]=[a.year,a.month+1]:e&&r.autoCalendarModel.auto&&r.autoCalendarModel()}),r.checkDate("limit").calendar(null,null,"init"),lay(r.footer).find("."+L).removeClass(k));t&&"date"===t.attr("lay-type")&&t[0].click(),r.done(null,"change"),lay(this).addClass(x),"static"!==o.position&&r.setValue(r.parse()).done().remove()})),lay.each(m,function(e,t){y.appendChild(t)}),o.showBottom&&y.appendChild(e),lay.elem("style")),p=[],g=!0,t=(lay.each(o.theme,function(e,t){g&&/^#/.test(t)?(g=!(l=!0),p.push(["#{{id}} .layui-laydate-header{background-color:{{theme}};}","#{{id}} li.layui-this,#{{id}} td.layui-this>div{background-color:{{theme}} !important;}",-1!==o.theme.indexOf("circle")?"":"#{{id}} .layui-this{background-color:{{theme}} !important;}","#{{id}} .laydate-day-now{color:{{theme}} !important;}","#{{id}} .laydate-day-now:after{border-color:{{theme}} !important;}"].join("").replace(/{{id}}/g,r.elemID).replace(/{{theme}}/g,t))):!g&&/^#/.test(t)&&p.push(["#{{id}} .laydate-selected>div{background-color:{{theme}} !important;}","#{{id}} .laydate-selected:hover>div{background-color:{{theme}} !important;}"].join("").replace(/{{id}}/g,r.elemID).replace(/{{theme}}/g,t))}),o.shortcuts&&o.range&&p.push("#{{id}}.layui-laydate-range{width: 628px;}".replace(/{{id}}/g,r.elemID)),p.length&&(p=p.join(""),"styleSheet"in f?(f.setAttribute("type","text/css"),f.styleSheet.cssText=p):f.innerHTML=p,l&&lay(y).addClass("laydate-theme-molv"),y.appendChild(f)),r.remove(I.thisElemDate),D.thisId=o.id,s?o.elem.append(y):(v.body.appendChild(y),r.position()),o.shade?'
          ':"");y.insertAdjacentHTML("beforebegin",t),r.checkDate().calendar(null,0,"init"),r.changeEvent(),I.thisElemDate=r.elemID,r.renderAdditional(),"function"==typeof o.ready&&o.ready(lay.extend({},o.dateTime,{month:o.dateTime.month+1})),r.preview()},I.prototype.remove=function(e){var t=this,a=t.config,n=lay("#"+(e||t.elemID));return n[0]&&(n.hasClass(T)||t.checkDate(function(){n.remove(),delete t.startDate,delete t.endDate,delete t.endState,delete t.startTime,delete t.endTime,delete D.thisId,"function"==typeof a.close&&a.close(t)}),lay("."+S).remove()),t},I.prototype.position=function(){var e=this.config;return lay.position(e.elem[0],this.elem,{position:e.position}),this},I.prototype.hint=function(e){var t=this,a=(t.config,lay.elem("div",{"class":r}));t.elem&&(a.innerHTML=(e="object"==typeof e?e||{}:{content:e}).content||"",lay(t.elem).find("."+r).remove(),t.elem.appendChild(a),clearTimeout(t.hinTimer),t.hinTimer=setTimeout(function(){lay(t.elem).find("."+r).remove()},"ms"in e?e.ms:3e3))},I.prototype.getAsYM=function(e,t,a){return a?t--:t++,t<0&&(t=11,e--),11h[1]&&(e.year=h[1],o=!0),11t)&&(e.date=t,o=!0)},u=function(n,i,l){var r=["startTime","endTime"];i=(i.match(d.EXP_SPLIT)||[]).slice(1),l=l||0,s.range&&(d[r[l]]=d[r[l]]||{}),lay.each(d.format,function(e,t){var a=parseFloat(i[e]);i[e].lengthd.getDateTime(s.max)?(r=s.dateTime=lay.extend({},s.max),i=!0):d.getDateTime(r)d.getDateTime(s.max))&&(d.endDate=lay.extend({},s.max),i=!0),d.startTime={hours:s.dateTime.hours,minutes:s.dateTime.minutes,seconds:s.dateTime.seconds},d.endTime={hours:d.endDate.hours,minutes:d.endDate.minutes,seconds:d.endDate.seconds},"month"===s.type)&&(s.dateTime.date=1,d.endDate.date=1),i&&m&&(d.setValue(d.parse()),d.hint("value "+l.invalidDate+l.formatError[1])),d.startDate=d.startDate||m&&lay.extend({},s.dateTime),d.autoCalendarModel.auto&&d.autoCalendarModel(),d.endState=!s.range||!d.rangeLinked||!(!d.startDate||!d.endDate),e&&e()),d},I.prototype.mark=function(e,a){var n,t=this.config;return lay.each(t.mark,function(e,t){e=e.split("-");e[0]!=a[0]&&0!=e[0]||e[1]!=a[1]&&0!=e[1]||e[2]!=a[2]||(n=t||a[2])}),n&&e.find("div").html(''+n+""),this},I.prototype.holidays=function(n,i){var e=this.config,l=["","work"];return"array"===layui.type(e.holidays)&&lay.each(e.holidays,function(a,e){lay.each(e,function(e,t){t===n.attr("lay-ymd")&&n.find("div").html('"+i[2]+"")})}),this},I.prototype.limit=function(t){t=t||{};var i=this,e=i.config,l={},a=t.index>(t.time?0:41)?i.endDate:e.dateTime;return lay.each({now:lay.extend({},a,t.date||{}),min:e.min,max:e.max},function(e,a){var n;l[e]=i.newDate(lay.extend({year:a.year,month:"year"===t.type?0:a.month,date:"year"===t.type||"month"===t.type?1:a.date},(n={},lay.each(t.time,function(e,t){n[t]=a[t]}),n))).getTime()}),a=l.nowh[1]&&(d.year=h[1],o.hint(y.invalidDate)),o.firstDate||(o.firstDate=lay.extend({},d)),s.setFullYear(d.year,d.month,1),i=(s.getDay()+(7-n.weekStart))%7,l=D.getEndDate(d.month||12,d.year),r=D.getEndDate(d.month+1,d.year),lay.each(c,function(e,t){var a=[d.year,d.month],n=0;(t=lay(t)).removeAttr("class"),e"+a[2]+"
          "),o.mark(t,a).holidays(t,a).limit({elem:t,date:{year:a[0],month:a[1]-1,date:a[2]},index:e})}),lay(u[0]).attr("lay-ym",d.year+"-"+(d.month+1)),lay(u[1]).attr("lay-ym",d.year+"-"+(d.month+1)),"cn"===n.lang?(lay(u[0]).attr("lay-type","year").html(d.year+" \u5e74"),lay(u[1]).attr("lay-type","month").html(d.month+1+" \u6708")):(lay(u[0]).attr("lay-type","month").html(y.month[d.month]),lay(u[1]).attr("lay-type","year").html(d.year)),m&&(n.range?!e&&"init"===a||(o.listYM=[[(o.startDate||n.dateTime).year,(o.startDate||n.dateTime).month+1],[o.endDate.year,o.endDate.month+1]],o.list(n.type,0).list(n.type,1),"time"===n.type?o.setBtnStatus("\u65f6\u95f4",lay.extend({},o.systemDate(),o.startTime),lay.extend({},o.systemDate(),o.endTime)):o.setBtnStatus(!0)):(o.listYM=[[d.year,d.month+1]],o.list(n.type,0))),n.range&&"init"===a&&(o.rangeLinked?(s=o.getAsYM(d.year,d.month,t?"sub":null),o.calendar(lay.extend({},d,{year:s[0],month:s[1]}),1-t)):o.calendar(null,1-t)),n.range||(c=["hours","minutes","seconds"],o.limit({elem:lay(o.footer).find(".laydate-btns-now"),date:o.systemDate(),index:0,time:c}),o.limit({elem:lay(o.footer).find(C),index:0,time:c})),o.setBtnStatus(),lay(o.shortcut).find("li."+x).removeClass(x),n.range&&!m&&"init"!==a&&o.stampRange(),o},I.prototype.list=function(n,i){var l,r,e,o,d=this,s=d.config,y=d.rangeLinked?s.dateTime:[s.dateTime,d.endDate][i],m=d.lang(),t=s.range&&"date"!==s.type&&"datetime"!==s.type,c=lay.elem("ul",{"class":w+" "+{year:"laydate-year-list",month:"laydate-month-list",time:"laydate-time-list"}[n]}),a=d.elemHeader[i],u=lay(a[2]).find("span"),h=d.elemCont[i||0],f=lay(h).find("."+w)[0],p="cn"===s.lang,g=p?"\u5e74":"",v=d.listYM[i]||{},D=["hours","minutes","seconds"],T=["startTime","endTime"][i];return v[0]<1&&(v[0]=1),"year"===n?(e=l=v[0]-7,l<1&&(e=l=1),lay.each(new Array(15),function(e){var t=lay.elem("li",{"lay-ym":l}),a={year:l,month:0,date:1};l==v[0]&&lay(t).addClass(x),t.innerHTML=l+g,c.appendChild(t),d.limit({elem:lay(t),date:a,index:i,type:n}),l++}),lay(u[p?0:1]).attr("lay-ym",l-8+"-"+v[1]).html(e+g+" - "+(l-1)+g)):"month"===n?(lay.each(new Array(12),function(e){var t=lay.elem("li",{"lay-ym":e}),a={year:v[0],month:e,date:1};e+1==v[1]&&lay(t).addClass(x),t.innerHTML=m.month[e]+(p?"\u6708":""),c.appendChild(t),d.limit({elem:lay(t),date:a,index:i,type:n})}),lay(u[p?0:1]).attr("lay-ym",v[0]+"-"+v[1]).html(v[0]+g)):"time"===n&&(r=function(){lay(c).find("ol").each(function(a,e){lay(e).find("li").each(function(e,t){d.limit({elem:lay(t),date:[{hours:e},{hours:d[T].hours,minutes:e},{hours:d[T].hours,minutes:d[T].minutes,seconds:e}][a],index:i,time:[["hours"],["hours","minutes"],["hours","minutes","seconds"]][a]})})}),s.range||d.limit({elem:lay(d.footer).find(C),date:d[T],inedx:0,time:["hours","minutes","seconds"]})},s.range?d[T]||(d[T]="startTime"===T?y:d.endDate):d[T]=y,lay.each([24,60,60],function(t,e){var a=lay.elem("li"),n=["

          "+m.time[t]+"

            "];lay.each(new Array(e),function(e){n.push(""+lay.digit(e,2)+"")}),a.innerHTML=n.join("")+"
          ",c.appendChild(a)}),r()),f&&h.removeChild(f),h.appendChild(c),"year"===n||"month"===n?(lay(d.elemMain[i]).addClass("laydate-ym-show"),lay(c).find("li").on("click",function(){var e=0|lay(this).attr("lay-ym");lay(this).hasClass(k)||(d.rangeLinked?lay.extend(y,{year:"year"===n?e:v[0],month:"year"===n?v[1]-1:e}):y[n]=e,"year"===s.type||"month"===s.type?(lay(c).find("."+x).removeClass(x),lay(this).addClass(x),"month"===s.type&&"year"===n&&(d.listYM[i][0]=e,t&&((i?d.endDate:y).year=e),d.list("month",i))):(d.checkDate("limit").calendar(y,i,"init"),d.closeList()),d.setBtnStatus(),!s.range&&s.autoConfirm&&("month"===s.type&&"month"===n||"year"===s.type&&"year"===n)&&d.setValue(d.parse()).done().remove(),d.autoCalendarModel.auto&&!d.rangeLinked?d.choose(lay(h).find("td.layui-this"),i):d.endState&&d.done(null,"change"),lay(d.footer).find("."+L).removeClass(k))})):(e=lay.elem("span",{"class":M}),o=function(){lay(c).find("ol").each(function(e){var a=this,t=lay(a).find("li");a.scrollTop=30*(d[T][D[e]]-2),a.scrollTop<=0&&t.each(function(e,t){if(!lay(this).hasClass(k))return a.scrollTop=30*(e-2),!0})})},u=lay(a[2]).find("."+M),o(),e.innerHTML=s.range?[m.startTime,m.endTime][i]:m.timeTips,lay(d.elemMain[i]).addClass("laydate-time-show"),u[0]&&u.remove(),a[2].appendChild(e),lay(c).find("ol").each(function(t){var a=this;lay(a).find("li").on("click",function(){var e=0|this.innerHTML;lay(this).hasClass(k)||(s.range?d[T][D[t]]=e:y[D[t]]=e,lay(a).find("."+x).removeClass(x),lay(this).addClass(x),r(),o(),(d.endDate||"time"===s.type||"datetime"===s.type&&s.fullPanel)&&d.done(null,"change"),d.setBtnStatus())})})),d},I.prototype.listYM=[],I.prototype.closeList=function(){var a=this;a.config;lay.each(a.elemCont,function(e,t){lay(this).find("."+w).remove(),lay(a.elemMain[e]).removeClass("laydate-ym-show laydate-time-show")}),lay(a.elem).find("."+M).remove()},I.prototype.setBtnStatus=function(e,t,a){var n=this,i=n.config,l=n.lang(),r=lay(n.footer).find(C);i.range&&"time"!==i.type&&(t=t||(n.rangeLinked?n.startDate:i.dateTime),a=a||n.endDate,i=!n.endState||n.newDate(t).getTime()>n.newDate(a).getTime(),n.limit({date:t})||n.limit({date:a})?r.addClass(k):r[i?"addClass":"removeClass"](k),e)&&i&&n.hint("string"==typeof e?l.timeout.replace(/\u65e5\u671f/g,e):l.timeout)},I.prototype.parse=function(e,t){var a=this,n=a.config,t=t||("end"==e?lay.extend({},a.endDate,a.endTime):n.range?lay.extend({},a.rangeLinked?a.startDate:n.dateTime,a.startTime):n.dateTime),t=D.parse(t,a.format,1);return n.range&&e===undefined?t+" "+a.rangeStr+" "+a.parse("end"):t},I.prototype.newDate=function(e){return e=e||{},new Date(e.year||1,e.month||0,e.date||1,e.hours||0,e.minutes||0,e.seconds||0)},I.prototype.getDateTime=function(e){return this.newDate(e).getTime()},I.prototype.setValue=function(e){var t=this,a=t.config,n=a.elem[0];return"static"!==a.position&&(e=e||"",t.isInput(n)?lay(n).val(e):(a=t.rangeElem)?("array"!==layui.type(e)&&(e=e.split(" "+t.rangeStr+" ")),a[0].val(e[0]||""),a[1].val(e[1]||"")):(0===lay(n).find("*").length&&lay(n).html(e),lay(n).attr("lay-date",e))),t},I.prototype.preview=function(){var e,t=this,a=t.config;a.isPreview&&(e=lay(t.elem).find("."+E),a=!a.range||(t.rangeLinked?t.endState:t.endDate)?t.parse():"",e.html(a),e.html())&&(e.css({color:"#16b777"}),setTimeout(function(){e.css({color:"#777"})},300))},I.prototype.renderAdditional=function(){this.config.fullPanel&&this.list("time",0)},I.prototype.stampRange=function(){var n,i=this,l=i.config,r=i.rangeLinked?i.startDate:l.dateTime,e=lay(i.elem).find("td");l.range&&!i.endState&&lay(i.footer).find(C).addClass(k),r=r&&i.newDate({year:r.year,month:r.month,date:r.date}).getTime(),n=i.endState&&i.endDate&&i.newDate({year:i.endDate.year,month:i.endDate.month,date:i.endDate.date}).getTime(),lay.each(e,function(e,t){var a=lay(t).attr("lay-ymd").split("-"),a=i.newDate({year:a[0],month:a[1]-1,date:a[2]}).getTime();l.rangeLinked&&!i.startDate&&a===i.newDate(i.systemDate()).getTime()&&lay(t).addClass(lay(t).hasClass(y)||lay(t).hasClass(m)?"":"laydate-day-now"),lay(t).removeClass(o+" "+x),a!==r&&a!==n||(i.rangeLinked||!i.rangeLinked&&(e<42?a===r:a===n))&&lay(t).addClass(lay(t).hasClass(y)||lay(t).hasClass(m)?o:x),rn.getDateTime(i.max)&&(n[t]={hours:i.max.hours,minutes:i.max.minutes,seconds:i.max.seconds},lay.extend(l,n[t])))}),a||(n.startDate=lay.extend({},l)),n.endState&&!n.limit({date:n.thisDateTime(1-a)})&&(((r=n.endState&&n.autoCalendarModel.auto?n.autoCalendarModel():r)||n.rangeLinked&&n.endState)&&n.newDate(n.startDate)>n.newDate(n.endDate)&&(e=n.startDate.year===n.endDate.year&&n.startDate.month===n.endDate.month&&n.startDate.date===n.endDate.date,o=n.startDate,n.startDate=lay.extend({},n.endDate,e?{}:n.startTime),i.dateTime=lay.extend({},n.startDate),n.endDate=lay.extend({},o,e?{}:n.endTime),e)&&(o=n.startTime,n.startTime=n.endTime,n.endTime=o),r)&&(i.dateTime=lay.extend({},n.startDate)),n.rangeLinked?(e=lay.extend({},l),!t||a||r||(o=n.getAsYM(l.year,l.month,"sub"),lay.extend(i.dateTime,{year:o[0],month:o[1]})),n.calendar(e,t,r?"init":null)):n.calendar(null,a,r?"init":null),n.endState&&n.done(null,"change")):"static"===i.position?n.calendar().done().done(null,"change"):"date"===i.type?i.autoConfirm?n.setValue(n.parse()).done().remove():n.calendar().done(null,"change"):"datetime"===i.type&&n.calendar().done(null,"change"))},I.prototype.tool=function(t,e){var a=this,n=a.config,i=a.lang(),l=n.dateTime,r="static"===n.position,o={datetime:function(){lay(t).hasClass(k)||(a.list("time",0),n.range&&a.list("time",1),lay(t).attr("lay-type","date").html(a.lang().dateTips))},date:function(){a.closeList(),lay(t).attr("lay-type","datetime").html(a.lang().timeTips)},clear:function(){r&&(lay.extend(l,a.firstDate),a.calendar()),n.range&&(delete n.dateTime,delete a.endDate,delete a.startTime,delete a.endTime),a.setValue(""),a.done(null,"onClear").done(["",{},{}]).remove()},now:function(){var e=new Date;if(lay(t).hasClass(k))return a.hint(i.tools.now+", "+i.invalidDate);lay.extend(l,a.systemDate(),{hours:e.getHours(),minutes:e.getMinutes(),seconds:e.getSeconds()}),a.setValue(a.parse()),r&&a.calendar(),a.done(null,"onNow").done().remove()},confirm:function(){if(n.range){if(lay(t).hasClass(k))return a.hint("time"===n.type?i.timeout.replace(/\u65e5\u671f/g,"\u65f6\u95f4"):i.timeout)}else if(lay(t).hasClass(k))return a.hint(i.invalidDate);a.setValue(a.parse()),a.done(null,"onConfirm").done().remove()}};o[e]&&o[e]()},I.prototype.change=function(n){var i=this,l=i.config,r=i.thisDateTime(n),o=l.range&&("year"===l.type||"month"===l.type),d=i.elemCont[n||0],s=i.listYM[n],e=function(e){var t=lay(d).find(".laydate-year-list")[0],a=lay(d).find(".laydate-month-list")[0];return t&&(s[0]=e?s[0]-15:s[0]+15,i.list("year",n)),a&&(e?s[0]--:s[0]++,i.list("month",n)),(t||a)&&(lay.extend(r,{year:s[0]}),o&&(r.year=s[0]),l.range||i.done(null,"change"),l.range||i.limit({elem:lay(i.footer).find(C),date:{year:s[0]}})),i.setBtnStatus(),t||a};return{prevYear:function(){e("sub")||(i.rangeLinked?(l.dateTime.year--,i.checkDate("limit").calendar(null,null,"init")):(r.year--,i.checkDate("limit").calendar(null,n),i.autoCalendarModel.auto?i.choose(lay(d).find("td.layui-this"),n):i.done(null,"change")))},prevMonth:function(){i.rangeLinked&&(r=l.dateTime);var e=i.getAsYM(r.year,r.month,"sub");lay.extend(r,{year:e[0],month:e[1]}),i.checkDate("limit").calendar(null,null,"init"),i.rangeLinked||(i.autoCalendarModel.auto?i.choose(lay(d).find("td.layui-this"),n):i.done(null,"change"))},nextMonth:function(){i.rangeLinked&&(r=l.dateTime);var e=i.getAsYM(r.year,r.month);lay.extend(r,{year:e[0],month:e[1]}),i.checkDate("limit").calendar(null,null,"init"),i.rangeLinked||(i.autoCalendarModel.auto?i.choose(lay(d).find("td.layui-this"),n):i.done(null,"change"))},nextYear:function(){e()||(i.rangeLinked?(l.dateTime.year++,i.checkDate("limit").calendar(null,0,"init")):(r.year++,i.checkDate("limit").calendar(null,n),i.autoCalendarModel.auto?i.choose(lay(d).find("td.layui-this"),n):i.done(null,"change")))}}},I.prototype.changeEvent=function(){var i=this;i.config;lay(i.elem).on("click",function(e){lay.stope(e)}).on("mousedown",function(e){lay.stope(e)}),lay.each(i.elemHeader,function(n,e){lay(e[0]).on("click",function(e){i.change(n).prevYear()}),lay(e[1]).on("click",function(e){i.change(n).prevMonth()}),lay(e[2]).find("span").on("click",function(e){var t=lay(this),a=t.attr("lay-ym"),t=t.attr("lay-type");a&&(a=a.split("-"),i.listYM[n]=[0|a[0],0|a[1]],i.list(t,n),lay(i.footer).find("."+L).addClass(k))}),lay(e[3]).on("click",function(e){i.change(n).nextMonth()}),lay(e[4]).on("click",function(e){i.change(n).nextYear()})}),lay.each(i.table,function(e,t){lay(t).find("td").on("click",function(){i.choose(lay(this),e)})}),lay(i.footer).find("span").on("click",function(){var e=lay(this).attr("lay-type");i.tool(this,e)})},I.prototype.isInput=function(e){return/input|textarea/.test(e.tagName.toLocaleLowerCase())||/INPUT|TEXTAREA/.test(e.tagName)},I.prototype.events=function(){var e,t=this,a=t.config;a.elem[0]&&!a.elem[0].eventHandler&&(a.elem.on(a.trigger,e=function(){D.thisId!==a.id&&t.render()}),a.elem[0].eventHandler=!0,a.eventElem.on(a.trigger,e),t.unbind=function(){t.remove(),a.elem.off(a.trigger,e),a.elem.removeAttr("lay-key"),a.elem.removeAttr(d),a.elem[0].eventHandler=!1,a.eventElem.off(a.trigger,e),a.eventElem.removeAttr("lay-key"),delete s.that[a.id]})},s.that={},s.getThis=function(e){var t=s.that[e];return!t&&n&&layui.hint().error(e?a+" instance with ID '"+e+"' not found":"ID argument required"),t},l.run=function(n){n(v).on("mousedown",function(e){var t,a;D.thisId&&(t=s.getThis(D.thisId))&&(a=t.config,e.target!==a.elem[0])&&e.target!==a.eventElem[0]&&e.target!==n(a.closeStop)[0]&&t.remove()}).on("keydown",function(e){var t;D.thisId&&(t=s.getThis(D.thisId))&&"static"!==t.config.position&&13===e.keyCode&&n("#"+t.elemID)[0]&&t.elemID===I.thisElemDate&&(e.preventDefault(),n(t.footer).find(C)[0].click())}),n(i).on("resize",function(){if(D.thisId){var e=s.getThis(D.thisId);if(e)return!(!e.elem||!n(".layui-laydate")[0])&&void e.position()}})},D.render=function(e){e=new I(e);return s.call(e)},D.reload=function(e,t){e=s.getThis(e);if(e)return e.reload(t)},D.getInst=function(e){e=s.getThis(e);if(e)return e.inst},D.hint=function(e,t){e=s.getThis(e);if(e)return e.hint(t)},D.unbind=function(e){e=s.getThis(e);if(e)return e.unbind()},D.close=function(e){e=s.getThis(e||D.thisId);if(e)return e.remove()},D.parse=function(a,n,i){return a=a||{},n=((n="string"==typeof n?s.formatArr(n):n)||[]).concat(),lay.each(n,function(e,t){/yyyy|y/.test(t)?n[e]=lay.digit(a.year,t.length):/MM|M/.test(t)?n[e]=lay.digit(a.month+(i||0),t.length):/dd|d/.test(t)?n[e]=lay.digit(a.date,t.length):/HH|H/.test(t)?n[e]=lay.digit(a.hours,t.length):/mm|m/.test(t)?n[e]=lay.digit(a.minutes,t.length):/ss|s/.test(t)&&(n[e]=lay.digit(a.seconds,t.length))}),n.join("")},D.getEndDate=function(e,t){var a=new Date;return a.setFullYear(t||a.getFullYear(),e||a.getMonth()+1,1),new Date(a.getTime()-864e5).getDate()},n?(D.ready(),layui.define("lay",function(e){D.path=layui.cache.dir,l.run(lay),e(a,D)})):"function"==typeof define&&define.amd?define(function(){return l.run(lay),D}):(D.ready(),l.run(i.lay),i.laydate=D)}(window,window.document);!function(e,t){"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e):function(e){if(e.document)return t(e);throw new Error("jQuery requires a window with a document")}:t(e)}("undefined"!=typeof window?window:this,function(T,M){var f=[],g=T.document,c=f.slice,O=f.concat,R=f.push,P=f.indexOf,B={},W=B.toString,m=B.hasOwnProperty,y={},e="1.12.4",C=function(e,t){return new C.fn.init(e,t)},I=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,$=/^-ms-/,z=/-([\da-z])/gi,X=function(e,t){return t.toUpperCase()};function U(e){var t=!!e&&"length"in e&&e.length,n=C.type(e);return"function"!==n&&!C.isWindow(e)&&("array"===n||0===t||"number"==typeof t&&0+~]|"+a+")"+a+"*"),ee=new RegExp("="+a+"*([^\\]'\"]*?)"+a+"*\\]","g"),te=new RegExp(G),ne=new RegExp("^"+s+"$"),f={ID:new RegExp("^#("+s+")"),CLASS:new RegExp("^\\.("+s+")"),TAG:new RegExp("^("+s+"|[*])"),ATTR:new RegExp("^"+J),PSEUDO:new RegExp("^"+G),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+a+"*(even|odd|(([+-]|)(\\d*)n|)"+a+"*(?:([+-]|)"+a+"*(\\d+)|))"+a+"*\\)|)","i"),bool:new RegExp("^(?:"+Y+")$","i"),needsContext:new RegExp("^"+a+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+a+"*((?:-\\d)?\\d*)"+a+"*\\)|)(?=[^-]|$)","i")},re=/^(?:input|select|textarea|button)$/i,ie=/^h\d$/i,c=/^[^{]+\{\s*\[native \w/,oe=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ae=/[+~]/,se=/'|\\/g,d=new RegExp("\\\\([\\da-f]{1,6}"+a+"?|("+a+")|.)","ig"),p=function(e,t,n){var r="0x"+t-65536;return r!=r||n?t:r<0?String.fromCharCode(65536+r):String.fromCharCode(r>>10|55296,1023&r|56320)},ue=function(){C()};try{D.apply(n=V.call(v.childNodes),v.childNodes),n[v.childNodes.length].nodeType}catch(F){D={apply:n.length?function(e,t){U.apply(e,V.call(t))}:function(e,t){for(var n=e.length,r=0;e[n++]=t[r++];);e.length=n-1}}}function H(e,t,n,r){var i,o,a,s,u,l,c,f,d=t&&t.ownerDocument,p=t?t.nodeType:9;if(n=n||[],"string"!=typeof e||!e||1!==p&&9!==p&&11!==p)return n;if(!r&&((t?t.ownerDocument||t:v)!==E&&C(t),t=t||E,N)){if(11!==p&&(l=oe.exec(e)))if(i=l[1]){if(9===p){if(!(a=t.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(d&&(a=d.getElementById(i))&&y(t,a)&&a.id===i)return n.push(a),n}else{if(l[2])return D.apply(n,t.getElementsByTagName(e)),n;if((i=l[3])&&g.getElementsByClassName&&t.getElementsByClassName)return D.apply(n,t.getElementsByClassName(i)),n}if(g.qsa&&!A[e+" "]&&(!m||!m.test(e))){if(1!==p)d=t,f=e;else if("object"!==t.nodeName.toLowerCase()){for((s=t.getAttribute("id"))?s=s.replace(se,"\\$&"):t.setAttribute("id",s=k),o=(c=w(e)).length,u=ne.test(s)?"#"+s:"[id='"+s+"']";o--;)c[o]=u+" "+_(c[o]);f=c.join(","),d=ae.test(e)&&de(t.parentNode)||t}if(f)try{return D.apply(n,d.querySelectorAll(f)),n}catch(h){}finally{s===k&&t.removeAttribute("id")}}}return P(e.replace(L,"$1"),t,n,r)}function le(){var n=[];function r(e,t){return n.push(e+" ")>b.cacheLength&&delete r[n.shift()],r[e+" "]=t}return r}function q(e){return e[k]=!0,e}function h(e){var t=E.createElement("div");try{return!!e(t)}catch(F){return!1}finally{t.parentNode&&t.parentNode.removeChild(t)}}function ce(e,t){for(var n=e.split("|"),r=n.length;r--;)b.attrHandle[n[r]]=t}function fe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&(~t.sourceIndex||1<<31)-(~e.sourceIndex||1<<31);if(r)return r;if(n)for(;n=n.nextSibling;)if(n===t)return-1;return e?1:-1}function x(a){return q(function(o){return o=+o,q(function(e,t){for(var n,r=a([],e.length,o),i=r.length;i--;)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function de(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in g=H.support={},O=H.isXML=function(e){e=e&&(e.ownerDocument||e).documentElement;return!!e&&"HTML"!==e.nodeName},C=H.setDocument=function(e){var e=e?e.ownerDocument||e:v;return e!==E&&9===e.nodeType&&e.documentElement&&(t=(E=e).documentElement,N=!O(E),(e=E.defaultView)&&e.top!==e&&(e.addEventListener?e.addEventListener("unload",ue,!1):e.attachEvent&&e.attachEvent("onunload",ue)),g.attributes=h(function(e){return e.className="i",!e.getAttribute("className")}),g.getElementsByTagName=h(function(e){return e.appendChild(E.createComment("")),!e.getElementsByTagName("*").length}),g.getElementsByClassName=c.test(E.getElementsByClassName),g.getById=h(function(e){return t.appendChild(e).id=k,!E.getElementsByName||!E.getElementsByName(k).length}),g.getById?(b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&N)return(e=t.getElementById(e))?[e]:[]},b.filter.ID=function(e){var t=e.replace(d,p);return function(e){return e.getAttribute("id")===t}}):(delete b.find.ID,b.filter.ID=function(e){var t=e.replace(d,p);return function(e){e="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return e&&e.value===t}}),b.find.TAG=g.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):g.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"!==e)return o;for(;n=o[i++];)1===n.nodeType&&r.push(n);return r},b.find.CLASS=g.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&N)return t.getElementsByClassName(e)},r=[],m=[],(g.qsa=c.test(E.querySelectorAll))&&(h(function(e){t.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&m.push("[*^$]="+a+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||m.push("\\["+a+"*(?:value|"+Y+")"),e.querySelectorAll("[id~="+k+"-]").length||m.push("~="),e.querySelectorAll(":checked").length||m.push(":checked"),e.querySelectorAll("a#"+k+"+*").length||m.push(".#.+[+~]")}),h(function(e){var t=E.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&m.push("name"+a+"*[*^$|!~]?="),e.querySelectorAll(":enabled").length||m.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),m.push(",.*:")})),(g.matchesSelector=c.test(i=t.matches||t.webkitMatchesSelector||t.mozMatchesSelector||t.oMatchesSelector||t.msMatchesSelector))&&h(function(e){g.disconnectedMatch=i.call(e,"div"),i.call(e,"[s!='']:x"),r.push("!=",G)}),m=m.length&&new RegExp(m.join("|")),r=r.length&&new RegExp(r.join("|")),e=c.test(t.compareDocumentPosition),y=e||c.test(t.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,t=t&&t.parentNode;return e===t||!(!t||1!==t.nodeType||!(n.contains?n.contains(t):e.compareDocumentPosition&&16&e.compareDocumentPosition(t)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},$=e?function(e,t){var n;return e===t?(l=!0,0):(n=!e.compareDocumentPosition-!t.compareDocumentPosition)||(1&(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!g.sortDetached&&t.compareDocumentPosition(e)===n?e===E||e.ownerDocument===v&&y(v,e)?-1:t===E||t.ownerDocument===v&&y(v,t)?1:u?j(u,e)-j(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e===E?-1:t===E?1:i?-1:o?1:u?j(u,e)-j(u,t):0;if(i===o)return fe(e,t);for(n=e;n=n.parentNode;)a.unshift(n);for(n=t;n=n.parentNode;)s.unshift(n);for(;a[r]===s[r];)r++;return r?fe(a[r],s[r]):a[r]===v?-1:s[r]===v?1:0}),E},H.matches=function(e,t){return H(e,null,null,t)},H.matchesSelector=function(e,t){if((e.ownerDocument||e)!==E&&C(e),t=t.replace(ee,"='$1']"),g.matchesSelector&&N&&!A[t+" "]&&(!r||!r.test(t))&&(!m||!m.test(t)))try{var n=i.call(e,t);if(n||g.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(F){}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(d,p),e[3]=(e[3]||e[4]||e[5]||"").replace(d,p),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||H.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&H.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return f.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&te.test(n)&&(t=(t=w(n,!0))&&n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(d,p).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=W[e+" "];return t||(t=new RegExp("(^|"+a+")"+e+"("+a+"|$)"))&&W(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(t,n,r){return function(e){e=H.attr(e,t);return null==e?"!="===n:!n||(e+="","="===n?e===r:"!="===n?e!==r:"^="===n?r&&0===e.indexOf(r):"*="===n?r&&-1(?:<\/\1>|)$/,G=/^.[^:#\[\.,]*$/;function K(e,n,r){if(C.isFunction(n))return C.grep(e,function(e,t){return!!n.call(e,t,e)!==r});if(n.nodeType)return C.grep(e,function(e){return e===n!==r});if("string"==typeof n){if(G.test(n))return C.filter(n,e,r);n=C.filter(n,e)}return C.grep(e,function(e){return-1)[^>]*|#([\w-]*))$/,ee=((C.fn.init=function(e,t,n){if(e){if(n=n||Q,"string"!=typeof e)return e.nodeType?(this.context=this[0]=e,this.length=1,this):C.isFunction(e)?"undefined"!=typeof n.ready?n.ready(e):e(C):(e.selector!==undefined&&(this.selector=e.selector,this.context=e.context),C.makeArray(e,this));if(!(r="<"===e.charAt(0)&&">"===e.charAt(e.length-1)&&3<=e.length?[null,e,null]:Z.exec(e))||!r[1]&&t)return(!t||t.jquery?t||n:this.constructor(t)).find(e);if(r[1]){if(t=t instanceof C?t[0]:t,C.merge(this,C.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:g,!0)),J.test(r[1])&&C.isPlainObject(t))for(var r in t)C.isFunction(this[r])?this[r](t[r]):this.attr(r,t[r])}else{if((n=g.getElementById(r[2]))&&n.parentNode){if(n.id!==r[2])return Q.find(e);this.length=1,this[0]=n}this.context=g,this.selector=e}}return this}).prototype=C.fn,Q=C(g),/^(?:parents|prev(?:Until|All))/),te={children:!0,contents:!0,next:!0,prev:!0};function ne(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}C.fn.extend({has:function(e){var t,n=C(e,this),r=n.length;return this.filter(function(){for(t=0;t
          a",y.leadingWhitespace=3===S.firstChild.nodeType,y.tbody=!S.getElementsByTagName("tbody").length,y.htmlSerialize=!!S.getElementsByTagName("link").length,y.html5Clone="<:nav>"!==g.createElement("nav").cloneNode(!0).outerHTML,q.type="checkbox",q.checked=!0,k.appendChild(q),y.appendChecked=q.checked,S.innerHTML="",y.noCloneChecked=!!S.cloneNode(!0).lastChild.defaultValue,k.appendChild(S),(q=g.createElement("input")).setAttribute("type","radio"),q.setAttribute("checked","checked"),q.setAttribute("name","t"),S.appendChild(q),y.checkClone=S.cloneNode(!0).cloneNode(!0).lastChild.checked,y.noCloneEvent=!!S.addEventListener,S[C.expando]=1,y.attributes=!S.getAttribute(C.expando);var x={option:[1,""],legend:[1,"
          ","
          "],area:[1,"",""],param:[1,"",""],thead:[1,"","
          "],tr:[2,"","
          "],col:[2,"","
          "],td:[3,"","
          "],_default:y.htmlSerialize?[0,"",""]:[1,"X
          ","
          "]};function b(e,t){var n,r,i=0,o="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):undefined;if(!o)for(o=[],n=e.childNodes||e;null!=(r=n[i]);i++)!t||C.nodeName(r,t)?o.push(r):C.merge(o,b(r,t));return t===undefined||t&&C.nodeName(e,t)?C.merge([e],o):o}function we(e,t){for(var n,r=0;null!=(n=e[r]);r++)C._data(n,"globalEval",!t||C._data(t[r],"globalEval"))}x.optgroup=x.option,x.tbody=x.tfoot=x.colgroup=x.caption=x.thead,x.th=x.td;var Te=/<|&#?\w+;/,Ce=/"!==f[1]||Ce.test(a)?0:u:u.firstChild)&&a.childNodes.length;o--;)C.nodeName(c=a.childNodes[o],"tbody")&&!c.childNodes.length&&a.removeChild(c);for(C.merge(h,u.childNodes),u.textContent="";u.firstChild;)u.removeChild(u.firstChild);u=p.lastChild}else h.push(t.createTextNode(a));for(u&&p.removeChild(u),y.appendChecked||C.grep(b(h,"input"),Ee),g=0;a=h[g++];)if(r&&-1]","i"),Pe=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:-]+)[^>]*)\/>/gi,Be=/\s*$/g,ze=be(g).appendChild(g.createElement("div"));function Xe(e,t){return C.nodeName(e,"table")&&C.nodeName(11!==t.nodeType?t:t.firstChild,"tr")?e.getElementsByTagName("tbody")[0]||e.appendChild(e.ownerDocument.createElement("tbody")):e}function Ue(e){return e.type=(null!==C.find.attr(e,"type"))+"/"+e.type,e}function Ve(e){var t=Ie.exec(e.type);return t?e.type=t[1]:e.removeAttribute("type"),e}function Ye(e,t){if(1===t.nodeType&&C.hasData(e)){var n,r,i,e=C._data(e),o=C._data(t,e),a=e.events;if(a)for(n in delete o.handle,o.events={},a)for(r=0,i=a[n].length;r")},clone:function(e,t,n){var r,i,o,a,s,u=C.contains(e.ownerDocument,e);if(y.html5Clone||C.isXMLDoc(e)||!Re.test("<"+e.nodeName+">")?o=e.cloneNode(!0):(ze.innerHTML=e.outerHTML,ze.removeChild(o=ze.firstChild)),!(y.noCloneEvent&&y.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||C.isXMLDoc(e)))for(r=b(o),s=b(e),a=0;null!=(i=s[a]);++a)if(r[a]){f=c=l=p=d=void 0;var l,c,f,d=i,p=r[a];if(1===p.nodeType){if(l=p.nodeName.toLowerCase(),!y.noCloneEvent&&p[C.expando]){for(c in(f=C._data(p)).events)C.removeEvent(p,c,f.handle);p.removeAttribute(C.expando)}"script"===l&&p.text!==d.text?(Ue(p).text=d.text,Ve(p)):"object"===l?(p.parentNode&&(p.outerHTML=d.outerHTML),y.html5Clone&&d.innerHTML&&!C.trim(p.innerHTML)&&(p.innerHTML=d.innerHTML)):"input"===l&&ge.test(d.type)?(p.defaultChecked=p.checked=d.checked,p.value!==d.value&&(p.value=d.value)):"option"===l?p.defaultSelected=p.selected=d.defaultSelected:"input"!==l&&"textarea"!==l||(p.defaultValue=d.defaultValue)}}if(t)if(n)for(s=s||b(e),r=r||b(o),a=0;null!=(i=s[a]);a++)Ye(i,r[a]);else Ye(e,o);return 0<(r=b(o,"script")).length&&we(r,!u&&b(e,"script")),r=s=i=null,o},cleanData:function(e,t){for(var n,r,i,o,a=0,s=C.expando,u=C.cache,l=y.attributes,c=C.event.special;null!=(n=e[a]);a++)if((t||v(n))&&(o=(i=n[s])&&u[i])){if(o.events)for(r in o.events)c[r]?C.event.remove(n,r):C.removeEvent(n,r,o.handle);u[i]&&(delete u[i],l||"undefined"==typeof n.removeAttribute?n[s]=undefined:n.removeAttribute(s),f.push(i))}}}),C.fn.extend({domManip:w,detach:function(e){return Je(this,e,!0)},remove:function(e){return Je(this,e)},text:function(e){return d(this,function(e){return e===undefined?C.text(this):this.empty().append((this[0]&&this[0].ownerDocument||g).createTextNode(e))},null,e,arguments.length)},append:function(){return w(this,arguments,function(e){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||Xe(this,e).appendChild(e)})},prepend:function(){return w(this,arguments,function(e){var t;1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(t=Xe(this,e)).insertBefore(e,t.firstChild)})},before:function(){return w(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return w(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++){for(1===e.nodeType&&C.cleanData(b(e,!1));e.firstChild;)e.removeChild(e.firstChild);e.options&&C.nodeName(e,"select")&&(e.options.length=0)}return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return C.clone(this,e,t)})},html:function(e){return d(this,function(e){var t=this[0]||{},n=0,r=this.length;if(e===undefined)return 1===t.nodeType?t.innerHTML.replace(Oe,""):undefined;if("string"==typeof e&&!Be.test(e)&&(y.htmlSerialize||!Re.test(e))&&(y.leadingWhitespace||!ve.test(e))&&!x[(me.exec(e)||["",""])[1].toLowerCase()]){e=C.htmlPrefilter(e);try{for(;n")).appendTo(t.documentElement))[0].contentWindow||Ge[0].contentDocument).document).write(),t.close(),n=Qe(e,t),Ge.detach()),Ke[e]=n),n}var n,et,tt,nt,rt,it,ot,a,at=/^margin/,st=new RegExp("^("+e+")(?!px)[a-z%]+$","i"),ut=function(e,t,n,r){var i,o={};for(i in t)o[i]=e.style[i],e.style[i]=t[i];for(i in r=n.apply(e,r||[]),t)e.style[i]=o[i];return r},lt=g.documentElement;function t(){var e,t=g.documentElement;t.appendChild(ot),a.style.cssText="-webkit-box-sizing:border-box;box-sizing:border-box;position:relative;display:block;margin:auto;border:1px;padding:1px;top:1%;width:50%",n=tt=it=!1,et=rt=!0,T.getComputedStyle&&(e=T.getComputedStyle(a),n="1%"!==(e||{}).top,it="2px"===(e||{}).marginLeft,tt="4px"===(e||{width:"4px"}).width,a.style.marginRight="50%",et="4px"===(e||{marginRight:"4px"}).marginRight,(e=a.appendChild(g.createElement("div"))).style.cssText=a.style.cssText="-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:0",e.style.marginRight=e.style.width="0",a.style.width="1px",rt=!parseFloat((T.getComputedStyle(e)||{}).marginRight),a.removeChild(e)),a.style.display="none",(nt=0===a.getClientRects().length)&&(a.style.display="",a.innerHTML="
          t
          ",a.childNodes[0].style.borderCollapse="separate",(e=a.getElementsByTagName("td"))[0].style.cssText="margin:0;border:0;padding:0;display:none",nt=0===e[0].offsetHeight)&&(e[0].style.display="",e[1].style.display="none",nt=0===e[0].offsetHeight),t.removeChild(ot)}ot=g.createElement("div"),(a=g.createElement("div")).style&&(a.style.cssText="float:left;opacity:.5",y.opacity="0.5"===a.style.opacity,y.cssFloat=!!a.style.cssFloat,a.style.backgroundClip="content-box",a.cloneNode(!0).style.backgroundClip="",y.clearCloneStyle="content-box"===a.style.backgroundClip,(ot=g.createElement("div")).style.cssText="border:0;width:8px;height:0;top:0;left:-9999px;padding:0;margin-top:1px;position:absolute",a.innerHTML="",ot.appendChild(a),y.boxSizing=""===a.style.boxSizing||""===a.style.MozBoxSizing||""===a.style.WebkitBoxSizing,C.extend(y,{reliableHiddenOffsets:function(){return null==n&&t(),nt},boxSizingReliable:function(){return null==n&&t(),tt},pixelMarginRight:function(){return null==n&&t(),et},pixelPosition:function(){return null==n&&t(),n},reliableMarginRight:function(){return null==n&&t(),rt},reliableMarginLeft:function(){return null==n&&t(),it}}));var l,p,ct=/^(top|right|bottom|left)$/;function ft(e,t){return{get:function(){if(!e())return(this.get=t).apply(this,arguments);delete this.get}}}T.getComputedStyle?(l=function(e){var t=e.ownerDocument.defaultView;return(t=t&&t.opener?t:T).getComputedStyle(e)},p=function(e,t,n){var r,i,o=e.style;return""!==(i=(n=n||l(e))?n.getPropertyValue(t)||n[t]:undefined)&&i!==undefined||C.contains(e.ownerDocument,e)||(i=C.style(e,t)),n&&!y.pixelMarginRight()&&st.test(i)&&at.test(t)&&(e=o.width,t=o.minWidth,r=o.maxWidth,o.minWidth=o.maxWidth=o.width=i,i=n.width,o.width=e,o.minWidth=t,o.maxWidth=r),i===undefined?i:i+""}):lt.currentStyle&&(l=function(e){return e.currentStyle},p=function(e,t,n){var r,i,o,a=e.style;return null==(n=(n=n||l(e))?n[t]:undefined)&&a&&a[t]&&(n=a[t]),st.test(n)&&!ct.test(t)&&(r=a.left,(o=(i=e.runtimeStyle)&&i.left)&&(i.left=e.currentStyle.left),a.left="fontSize"===t?"1em":n,n=a.pixelLeft+"px",a.left=r,o)&&(i.left=o),n===undefined?n:n+""||"auto"});var dt=/alpha\([^)]*\)/i,pt=/opacity\s*=\s*([^)]*)/i,ht=/^(none|table(?!-c[ea]).+)/,gt=new RegExp("^("+e+")(.*)$","i"),mt={position:"absolute",visibility:"hidden",display:"block"},yt={letterSpacing:"0",fontWeight:"400"},vt=["Webkit","O","Moz","ms"],xt=g.createElement("div").style;function bt(e){if(e in xt)return e;for(var t=e.charAt(0).toUpperCase()+e.slice(1),n=vt.length;n--;)if((e=vt[n]+t)in xt)return e}function wt(e,t){for(var n,r,i,o=[],a=0,s=e.length;a
          a",F=q.getElementsByTagName("a")[0],k.setAttribute("type","checkbox"),q.appendChild(k),(F=q.getElementsByTagName("a")[0]).style.cssText="top:1px",y.getSetAttribute="t"!==q.className,y.style=/top/.test(F.getAttribute("style")),y.hrefNormalized="/a"===F.getAttribute("href"),y.checkOn=!!k.value,y.optSelected=e.selected,y.enctype=!!g.createElement("form").enctype,S.disabled=!0,y.optDisabled=!e.disabled,(k=g.createElement("input")).setAttribute("value",""),y.input=""===k.getAttribute("value"),k.value="t",k.setAttribute("type","radio"),y.radioValue="t"===k.value;var Lt=/\r/g,Ht=/[\x20\t\r\n\f]+/g;C.fn.extend({val:function(t){var n,e,r,i=this[0];return arguments.length?(r=C.isFunction(t),this.each(function(e){1!==this.nodeType||(null==(e=r?t.call(this,e,C(this).val()):t)?e="":"number"==typeof e?e+="":C.isArray(e)&&(e=C.map(e,function(e){return null==e?"":e+""})),(n=C.valHooks[this.type]||C.valHooks[this.nodeName.toLowerCase()])&&"set"in n&&n.set(this,e,"value")!==undefined)||(this.value=e)})):i?(n=C.valHooks[i.type]||C.valHooks[i.nodeName.toLowerCase()])&&"get"in n&&(e=n.get(i,"value"))!==undefined?e:"string"==typeof(e=i.value)?e.replace(Lt,""):null==e?"":e:void 0}}),C.extend({valHooks:{option:{get:function(e){var t=C.find.attr(e,"value");return null!=t?t:C.trim(C.text(e)).replace(Ht," ")}},select:{get:function(e){for(var t,n=e.options,r=e.selectedIndex,i="select-one"===e.type||r<0,o=i?null:[],a=i?r+1:n.length,s=r<0?a:i?r:0;s").append(C.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this)},C.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){C.fn[t]=function(e){return this.on(t,e)}}),C.expr.filters.animated=function(t){return C.grep(C.timers,function(e){return t===e.elem}).length},C.offset={setOffset:function(e,t,n){var r,i,o,a,s=C.css(e,"position"),u=C(e),l={};"static"===s&&(e.style.position="relative"),o=u.offset(),r=C.css(e,"top"),a=C.css(e,"left"),s=("absolute"===s||"fixed"===s)&&-1'+(s?a.title[0]:a.title)+"
          ":"";return a.zIndex=o,t([a.shade?'
          ':"",'
          '+(e&&2!=a.type?"":s)+"'+(n=["layui-icon-tips","layui-icon-success","layui-icon-error","layui-icon-question","layui-icon-lock","layui-icon-face-cry","layui-icon-face-smile"],o="layui-anim layui-anim-rotate layui-anim-loop",0==a.type&&-1!==a.icon?'':3==a.type?(i=["layui-icon-loading","layui-icon-loading-1"],2==a.icon?'
          ':''):"")+((1!=a.type||!e)&&a.content||"")+'
          '+(n=[],l&&(n.push(''),n.push('')),a.closeBtn&&n.push(''),n.join(""))+"
          "+(a.btn?function(){var e="";"string"==typeof a.btn&&(a.btn=[a.btn]);for(var t=0,i=a.btn.length;t'+a.btn[t]+"";return'
          '+e+"
          "}():"")+(a.resize?'':"")+"
          "],s,m('
          ')),this},t.pt.creat=function(){var e,t,i,n,a,o=this,s=o.config,l=o.index,r="object"==typeof(f=s.content),c=m("body");if(s.id&&m("."+y[0]).find("#"+s.id)[0])e=m("#"+s.id).closest("."+y[0]),t=e.attr("times"),i=e.data("config"),n=m("#"+y.SHADE+t),"min"===(e.data("maxminStatus")||{})?h.restore(t):i.hideOnClose&&(n.show(),e.show());else{switch(s.removeFocus&&document.activeElement.blur(),"string"==typeof s.area&&(s.area="auto"===s.area?["",""]:[s.area,""]),s.shift&&(s.anim=s.shift),6==h.ie&&(s.fixed=!1),s.type){case 0:s.btn="btn"in s?s.btn:u.btn[0],h.closeAll("dialog");break;case 2:var f=s.content=r?s.content:[s.content||"","auto"];s.content='';break;case 3:delete s.title,delete s.closeBtn,-1===s.icon&&s.icon,h.closeAll("loading");break;case 4:r||(s.content=[s.content,"body"]),s.follow=s.content[1],s.content=s.content[0]+'',delete s.title,s.tips="object"==typeof s.tips?s.tips:[s.tips,!0],s.tipsMore||h.closeAll("tips")}o.vessel(r,function(e,t,i){c.append(e[0]),r?2==s.type||4==s.type?m("body").append(e[1]):f.parents("."+y[0])[0]||(f.data("display",f.css("display")).show().addClass("layui-layer-wrap").wrap(e[1]),m("#"+y[0]+l).find("."+y[5]).before(t)):c.append(e[1]),m("#"+y.MOVE)[0]||c.append(u.moveElem=i),o.layero=m("#"+y[0]+l),o.shadeo=m("#"+y.SHADE+l),s.scrollbar||y.html.css("overflow","hidden").attr("layer-full",l)}).auto(l),o.shadeo.css({"background-color":s.shade[1]||"#000",opacity:s.shade[0]||s.shade}),2==s.type&&6==h.ie&&o.layero.find("iframe").attr("src",f[0]),4==s.type?o.tips():(o.offset(),parseInt(u.getStyle(document.getElementById(y.MOVE),"z-index"))||(o.layero.css("visibility","hidden"),h.ready(function(){o.offset(),o.layero.css("visibility","visible")}))),!s.fixed||u.events.resize[o.index]||(u.events.resize[o.index]=function(){o.resize()},d.on("resize",u.events.resize[o.index])),s.time<=0||setTimeout(function(){h.close(o.index)},s.time),o.move().callback(),y.anim[s.anim]&&(a="layer-anim "+y.anim[s.anim],o.layero.addClass(a).one("webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend",function(){m(this).removeClass(a)})),o.layero.data("config",s)}},t.pt.resize=function(){var e=this,t=e.config;e.offset(),(/^\d+%$/.test(t.area[0])||/^\d+%$/.test(t.area[1]))&&e.auto(e.index),4==t.type&&e.tips()},t.pt.auto=function(e){var t=this.config,i=m("#"+y[0]+e),n=(""===t.area[0]&&0t.maxWidth)&&i.width(t.maxWidth),[i.innerWidth(),i.innerHeight()]),a=i.find(y[1]).outerHeight()||0,o=i.find("."+y[6]).outerHeight()||0,e=function(e){(e=i.find(e)).height(n[1]-a-o-2*(0|parseFloat(e.css("padding-top"))))};return 2===t.type?e("iframe"):""===t.area[1]?0t.maxHeight?(n[1]=t.maxHeight,e("."+y[5])):t.fixed&&n[1]>=d.height()&&(n[1]=d.height(),e("."+y[5])):e("."+y[5]),this},t.pt.offset=function(){var e=this,t=e.config,i=e.layero,n=[i.outerWidth(),i.outerHeight()],a="object"==typeof t.offset;e.offsetTop=(d.height()-n[1])/2,e.offsetLeft=(d.width()-n[0])/2,a?(e.offsetTop=t.offset[0],e.offsetLeft=t.offset[1]||e.offsetLeft):"auto"!==t.offset&&("t"===t.offset?e.offsetTop=0:"r"===t.offset?e.offsetLeft=d.width()-n[0]:"b"===t.offset?e.offsetTop=d.height()-n[1]:"l"===t.offset?e.offsetLeft=0:"lt"===t.offset?(e.offsetTop=0,e.offsetLeft=0):"lb"===t.offset?(e.offsetTop=d.height()-n[1],e.offsetLeft=0):"rt"===t.offset?(e.offsetTop=0,e.offsetLeft=d.width()-n[0]):"rb"===t.offset?(e.offsetTop=d.height()-n[1],e.offsetLeft=d.width()-n[0]):e.offsetTop=t.offset),t.fixed||(e.offsetTop=/%$/.test(e.offsetTop)?d.height()*parseFloat(e.offsetTop)/100:parseFloat(e.offsetTop),e.offsetLeft=/%$/.test(e.offsetLeft)?d.width()*parseFloat(e.offsetLeft)/100:parseFloat(e.offsetLeft),e.offsetTop+=d.scrollTop(),e.offsetLeft+=d.scrollLeft()),"min"===i.data("maxminStatus")&&(e.offsetTop=d.height()-(i.find(y[1]).outerHeight()||0),e.offsetLeft=i.css("left")),i.css({top:e.offsetTop,left:e.offsetLeft})},t.pt.tips=function(){var e=this.config,t=this.layero,i=[t.outerWidth(),t.outerHeight()],n=m(e.follow),a={width:(n=n[0]?n:m("body")).outerWidth(),height:n.outerHeight(),top:n.offset().top,left:n.offset().left},o=t.find(".layui-layer-TipsG"),n=e.tips[0];e.tips[1]||o.remove(),a.autoLeft=function(){0d.width()&&(o=d.width()-180-(u.minStackArr.edgeIndex=u.minStackArr.edgeIndex||0,u.minStackArr.edgeIndex+=3))<0&&(o=0),t.minStack&&(l.left=o,l.top=d.height()-n,a||u.minStackIndex++,r.attr("minLeft",o)),r.attr("position",s),h.style(e,l,!0),i.hide(),"page"===r.attr("type")&&r.find(y[4]).hide(),u.rescollbar(e),c.hide())},h.restore=function(e){var t=m("#"+y[0]+e),i=m("#"+y.SHADE+e),n=t.attr("area").split(","),a=t.attr("type");t.removeData("maxminStatus"),h.style(e,{width:n[0],height:n[1],top:parseFloat(n[2]),left:parseFloat(n[3]),position:t.attr("position"),overflow:"visible"},!0),t.find(".layui-layer-max").removeClass("layui-layer-maxmin"),t.find(".layui-layer-min").show(),"page"===a&&t.find(y[4]).show(),u.rescollbar(e),i.show()},h.full=function(t){var i=m("#"+y[0]+t),e=i.data("maxminStatus");"max"!==e&&("min"===e&&h.restore(t),i.data("maxminStatus","max"),u.record(i),y.html.attr("layer-full")||y.html.css("overflow","hidden").attr("layer-full",t),clearTimeout(void 0),setTimeout(function(){var e="fixed"===i.css("position");h.style(t,{top:e?0:d.scrollTop(),left:e?0:d.scrollLeft(),width:"100%",height:"100%"},!0),i.find(".layui-layer-min").hide()},100))},h.title=function(e,t){m("#"+y[0]+(t||h.index)).find(y[1]).html(e)},h.close=function(o,s){var l,e,r=(t=m("."+y[0]).find("#"+o).closest("."+y[0]))[0]?(o=t.attr("times"),t):m("#"+y[0]+o),c=r.attr("type"),t=r.data("config")||{},f=t.id&&t.hideOnClose;r[0]&&(l={slideDown:"layer-anim-slide-down-out",slideLeft:"layer-anim-slide-left-out",slideUp:"layer-anim-slide-up-out",slideRight:"layer-anim-slide-right-out"}[t.anim]||"layer-anim-close",e=function(){var e="layui-layer-wrap";if(f)return r.removeClass("layer-anim "+l),r.hide();if(c===u.type[1]&&"object"===r.attr("conType")){r.children(":not(."+y[5]+")").remove();for(var t=r.find("."+e),i=0;i<2;i++)t.unwrap();t.css("display",t.data("display")).removeClass(e)}else{if(c===u.type[2])try{var n=m("#"+y[4]+o)[0];n.contentWindow.document.write(""),n.contentWindow.close(),r.find("."+y[5])[0].removeChild(n)}catch(a){}r[0].innerHTML="",r.remove()}"function"==typeof u.end[o]&&u.end[o](),delete u.end[o],"function"==typeof s&&s(),u.events.resize[o]&&(d.off("resize",u.events.resize[o]),delete u.events.resize[o])},m("#"+y.SHADE+o)[f?"hide":"remove"](),t.isOutAnim&&r.addClass("layer-anim "+l),6==h.ie&&u.reselect(),u.rescollbar(o),"string"==typeof r.attr("minLeft")&&(u.minStackIndex--,u.minStackArr.push(r.attr("minLeft"))),h.ie&&h.ie<10||!t.isOutAnim?e():setTimeout(function(){e()},200))},h.closeAll=function(n,a){"function"==typeof n&&(a=n,n=null);var o=m("."+y[0]);m.each(o,function(e){var t=m(this),i=n?t.attr("type")===n:1;i&&h.close(t.attr("times"),e===o.length-1?a:null)}),0===o.length&&"function"==typeof a&&a()},h.closeLast=function(e){h.close(m(".layui-layer-"+(e=e||"page")+":last").attr("times"))},h.cache||{}),g=function(e){return i.skin?" "+i.skin+" "+i.skin+"-"+e:""};h.prompt=function(i,n){var e="",t="";"function"==typeof(i=i||{})&&(n=i),i.area&&(e='style="width: '+(o=i.area)[0]+"; height: "+o[1]+';"',delete i.area),i.placeholder&&(t=' placeholder="'+i.placeholder+'"');var a,o=2==i.formType?'":'",s=i.success;return delete i.success,h.open(m.extend({type:1,btn:["确定","取消"],content:o,skin:"layui-layer-prompt"+g("prompt"),maxWidth:d.width(),success:function(e){(a=e.find(".layui-layer-input")).val(i.value||"").focus(),"function"==typeof s&&s(e)},resize:!1,yes:function(e){var t=a.val();t.length>(i.maxlength||500)?h.tips("最多输入"+(i.maxlength||500)+"个字数",a,{tips:1}):n&&n(t,e,a)}},i))},h.tab=function(n){var a=(n=n||{}).tab||{},o="layui-this",s=n.success;return delete n.success,h.open(m.extend({type:1,skin:"layui-layer-tab"+g("tab"),resize:!1,title:function(){var e=a.length,t=1,i="";if(0'+a[0].title+"";t"+a[t].title+"";return i}(),content:'
            '+function(){var e=a.length,t=1,i="";if(0'+(a[0].content||"no content")+"";t'+(a[t].content||"no content")+"";return i}()+"
          ",success:function(e){var t=e.find(".layui-layer-title").children(),i=e.find(".layui-layer-tabmain").children();t.on("mousedown",function(e){e.stopPropagation?e.stopPropagation():e.cancelBubble=!0;var e=m(this),t=e.index();e.addClass(o).siblings().removeClass(o),i.eq(t).show().siblings().hide(),"function"==typeof n.change&&n.change(t)}),"function"==typeof s&&s(e)}},n))},h.photos=function(n,e,a){var o={};if((n=n||{}).photos){var t=!("string"==typeof n.photos||n.photos instanceof m),i=t?n.photos:{},s=i.data||[],l=i.start||0,r=(o.imgIndex=1+(0|l),n.img=n.img||"img",n.success);if(delete n.success,t){if(0===s.length)return h.msg("没有图片")}else{var c=m(n.photos),f=function(){s=[],c.find(n.img).each(function(e){var t=m(this);t.attr("layer-index",e),s.push({alt:t.attr("alt"),pid:t.attr("layer-pid"),src:t.attr("lay-src")||t.attr("layer-src")||t.attr("src"),thumb:t.attr("src")})})};if(f(),0===s.length)return;if(e||c.on("click",n.img,function(){f();var e=m(this).attr("layer-index");h.photos(m.extend(n,{photos:{start:e,data:s,tab:n.tab},full:n.full}),!0)}),!e)return}o.imgprev=function(e){o.imgIndex--,o.imgIndex<1&&(o.imgIndex=s.length),o.tabimg(e)},o.imgnext=function(e,t){o.imgIndex++,o.imgIndex>s.length&&(o.imgIndex=1,t)||o.tabimg(e)},o.keyup=function(e){var t;o.end||(t=e.keyCode,e.preventDefault(),37===t?o.imgprev(!0):39===t?o.imgnext(!0):27===t&&h.close(o.index))},o.tabimg=function(e){if(!(s.length<=1))return i.start=o.imgIndex-1,h.close(o.index),h.photos(n,!0,e)},o.event=function(){o.bigimg.find(".layui-layer-imgprev").on("click",function(e){e.preventDefault(),o.imgprev(!0)}),o.bigimg.find(".layui-layer-imgnext").on("click",function(e){e.preventDefault(),o.imgnext(!0)}),m(document).on("keyup",o.keyup)},o.loadi=h.load(1,{shade:!("shade"in n)&&.9,scrollbar:!1});var t=s[l].src,d=function(e){h.close(o.loadi);var t,i=s[l].alt||"";a&&(n.anim=-1),o.index=h.open(m.extend({type:1,id:"layui-layer-photos",area:(e=[e.width,e.height],t=[m(p).width()-100,m(p).height()-100],!n.full&&(t[0]'+i+''+(t=['
          '],1','','',"
          "].join("")),n.hideFooter||t.push(['
          ','
          ',"

          "+i+"

          ",""+o.imgIndex+" / "+s.length+"",'\u67e5\u770b\u539f\u56fe',"
          ","
          "].join("")),t.push("
          "),t.join(""))+"
          ",success:function(e,t){o.bigimg=e.find(".layui-layer-phimg"),o.imgsee=e.find(".layui-layer-imgbar"),o.event(e),n.tab&&n.tab(s[l],e),"function"==typeof r&&r(e)},end:function(){o.end=!0,m(document).off("keyup",o.keyup)}},n))},u=function(){h.close(o.loadi),h.msg("当前图片地址异常
          是否继续查看下一张?",{time:3e4,btn:["下一张","不看了"],yes:function(){1").addClass(a));layui.each(i.bars,function(e,t){var n=s('
        • ');n.addClass(t.icon).attr({"lay-type":t.type,style:t.style||(i.bgcolor?"background-color: "+i.bgcolor:"")}).html(t.content),n.on("click",function(){var e=s(this).attr("lay-type");"top"===e&&("body"===i.target?s("html,body"):c).animate({scrollTop:0},i.duration),"function"==typeof i.click&&i.click.call(this,e)}),"object"===layui.type(i.on)&&layui.each(i.on,function(e,t){n.on(e,function(){var e=s(this).attr("lay-type");"function"==typeof t&&t.call(this,e)})}),"top"===t.type&&(n.addClass("layui-fixbar-top"),o=n),u.append(n)}),l.find("."+a).remove(),"object"==typeof i.css&&u.css(i.css),l.append(u),o&&(t=function t(){return c.scrollTop()>=i.margin?e||(o.show(),e=1):e&&(o.hide(),e=0),t}()),c.on("scroll",function(){t&&(clearTimeout(n),n=setTimeout(function(){t()},100))})},countdown:function(e,t,n){var i=this,o="function"==typeof t,a=new Date(e).getTime(),r=new Date(!t||o?(new Date).getTime():t).getTime(),a=a-r,l=[Math.floor(a/864e5),Math.floor(a/36e5)%24,Math.floor(a/6e4)%60,Math.floor(a/1e3)%60],o=(o&&(n=t),setTimeout(function(){i.countdown(e,r+1e3,n)},1e3));return n&&n(0]|&(?=#[a-zA-Z0-9]+)/g.test(e+="")?e.replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,"""):e},unescape:function(e){return e!==undefined&&null!==e||(e=""),(e+="").replace(/\&/g,"&").replace(/\</g,"<").replace(/\>/g,">").replace(/\'/g,"'").replace(/\"/g,'"')},openWin:function(e){var t=(e=e||{}).window||window.open(e.url||"",e.target,e.specs);e.url||(t.document.open("text/html","replace"),t.document.write(e.content||""),t.document.close())},toVisibleArea:function(e){var t,n,i,o,a,r,l,c;(e=s.extend({margin:160,duration:200,type:"y"},e)).scrollElem[0]&&e.thisElem[0]&&(t=e.scrollElem,l=e.thisElem,i=(a="y"===e.type)?"top":"left",o=t[n=a?"scrollTop":"scrollLeft"](),a=t[a?"height":"width"](),r=t.offset()[i],c={},(l=l.offset()[i]-r)>a-e.margin||l."+h,k=function(e){var i=this;i.index=++p.index,i.config=s.extend({},i.config,p.config,e),i.init()};k.prototype.config={trigger:"click",content:"",className:"",style:"",show:!1,isAllowSpread:!0,isSpreadItem:!0,data:[],delay:300,shade:0},k.prototype.reload=function(e,i){var t=this;t.config=s.extend({},t.config,e),t.init(!0,i)},k.prototype.init=function(e,i){var t,n=this,a=n.config,l=s(a.elem);return 1');return 0No data
        • '),e},u=function(r,e){return layui.each(e,function(e,i){var t,n=i.child&&0",(t="href"in i?''+l+"":l,n?'
          '+t+("parent"===o?'':"group"===o&&d.isAllowSpread?'':"")+"
          ":'
          '+t+"
          "),""].join(""))).data("item",i),n&&(a=s('
          '),t=s("
            "),"parent"===o?(a.append(u(t,i.child)),l.append(a)):l.append(u(t,i.child))),r.append(l))}),r},a=['
            ',"
            "].join("");!(e="contextmenu"!==d.trigger&&!lay.isTopElem(d.elem[0])?e:!0)&&d.elem.data(m+"_opened")||(l.elemView=s("."+f+'[lay-id="'+d.id+'"]'),"reloadData"===i&&l.elemView.length?l.elemView.html(d.content||n()):(l.elemView=s(a),l.elemView.append(d.content||n()),d.className&&l.elemView.addClass(d.className),d.style&&l.elemView.attr("style",d.style),p.thisId=d.id,l.remove(),t.append(l.elemView),d.elem.data(m+"_opened",!0),e=d.shade?'
            ':"",l.elemView.before(e),"mouseenter"===d.trigger&&l.elemView.on("mouseenter",function(){clearTimeout(y.timer)}).on("mouseleave",function(){l.delayRemove()})),l.position(),(y.prevElem=l.elemView).data("prevElem",d.elem),l.elemView.find(".layui-menu").on(o,function(e){layui.stope(e)}),l.elemView.find(".layui-menu li").on("click",function(e){var i=s(this),t=i.data("item")||{},n=t.child&&0n.width()&&(t.addClass(V),(i=t[0].getBoundingClientRect()).left<0)&&t.removeClass(V),i.bottom>n.height())&&t.eq(0).css("margin-top",-(i.bottom-n.height()+5))}).on("mouseleave",t,function(e){var i=s(this).children("."+C);i.removeClass(V),i.css("margin-top",0)}),p.close=function(e){e=y.getThis(e);return e?(e.remove(),y.call(e)):this},p.reload=function(e,i,t){e=y.getThis(e);return e?(e.reload(i,t),y.call(e)):this},p.reloadData=function(){var t=s.extend([],arguments),n=(t[2]="reloadData",new RegExp("^("+["data","templet","content"].join("|")+")$"));return layui.each(t[1],function(e,i){n.test(e)||delete t[1][e]}),p.reload.apply(null,t)},p.render=function(e){e=new k(e);return y.call(e)},e(r,p)});layui.define(["jquery","lay"],function(e){"use strict";var g=layui.$,c=layui.lay,m={config:{},index:layui.slider?layui.slider.index+1e4:0,set:function(e){var i=this;return i.config=g.extend({},i.config,e),i},on:function(e,i){return layui.onevent.call(this,t,e,i)}},t="slider",v="layui-disabled",x="layui-slider-bar",b="layui-slider-wrap",T="layui-slider-wrap-btn",w="layui-slider-tips",M="layui-slider-input-txt",L="layui-slider-hover",i=function(e){var i=this;i.index=++m.index,i.config=g.extend({},i.config,m.config,e),i.render()};i.prototype.config={type:"default",min:0,max:100,value:0,step:1,showstep:!1,tips:!0,input:!1,range:!1,height:200,disabled:!1,theme:"#16baaa"},i.prototype.render=function(){var a=this,n=a.config,e=g(n.elem);if(1n.min?e:n.min,n.value[1]=i>n.min?i:n.min,n.value[0]=n.value[0]>n.max?n.max:n.value[0],n.value[1]=n.value[1]>n.max?n.max:n.value[1],i=Math.floor((n.value[0]-n.min)/(n.max-n.min)*100),t=(s=Math.floor((n.value[1]-n.min)/(n.max-n.min)*100))-i+"%",i+="%",s+="%"):("object"==typeof n.value&&(n.value=Math.min.apply(null,n.value)),n.valuen.max&&(n.value=n.max),t=Math.floor((n.value-n.min)/(n.max-n.min)*100)+"%");var l,e=n.disabled?"#c2c2c2":n.theme,i='
            '+(n.tips?'
            ':"")+'
            '+(n.range?'
            ':"")+"
            ",t=g(n.elem),s=t.next(".layui-slider");if(s[0]&&s.remove(),a.elemTemp=g(i),n.range?(a.elemTemp.find("."+b).eq(0).data("value",n.value[0]),a.elemTemp.find("."+b).eq(1).data("value",n.value[1])):a.elemTemp.find("."+b).data("value",n.value),t.html(a.elemTemp),"vertical"===n.type&&a.elemTemp.height(n.height+"px"),n.showstep){for(var o=(n.max-n.min)/n.step,r="",u=1;u<1+o;u++){var d=100*u/o;d<100&&(r+='
            ')}a.elemTemp.append(r)}n.input&&!n.range&&(e=g('
            '),t.css("position","relative"),t.append(e),t.find("."+M).children("input").val(n.value),"vertical"===n.type?e.css({left:0,top:-48}):a.elemTemp.css("margin-right",e.outerWidth()+15)),n.disabled?(a.elemTemp.addClass(v),a.elemTemp.find("."+T).addClass(v)):a.slide(),a.elemTemp.find("."+T).on("mouseover",function(){var e="vertical"===n.type?n.height:a.elemTemp[0].offsetWidth,i=a.elemTemp.find("."+b),t=("vertical"===n.type?e-g(this).parent()[0].offsetTop-i.height():g(this).parent()[0].offsetLeft)/e*100,i=g(this).parent().data("value"),e=n.setTips?n.setTips(i):i;a.elemTemp.find("."+w).html(e),clearTimeout(l),l=setTimeout(function(){"vertical"===n.type?a.elemTemp.find("."+w).css({bottom:t+"%","margin-bottom":"20px",display:"inline-block"}):a.elemTemp.find("."+w).css({left:t+"%",display:"inline-block"})},300)}).on("mouseout",function(){clearTimeout(l),a.elemTemp.find("."+w).css("display","none")})},i.prototype.slide=function(e,i,t){var o=this,r=o.config,u=o.elemTemp,d=function(){return"vertical"===r.type?r.height:u[0].offsetWidth},c=u.find("."+b),m=u.next(".layui-slider-input"),v=m.children("."+M).children("input").val(),p=100/((r.max-r.min)/Math.ceil(r.step)),f=function(e,i,t){e=(e=100<(e=100a[1]&&a.reverse(),o.value=r.range?a:l,r.change&&r.change(o.value),"done"===t&&r.done&&r.done(o.value)},h=function(e){var i=e/d()*100/p,t=Math.round(i)*p;return t=e==d()?Math.ceil(i)*p:t},y=g(['
            d()?d():i)/d()*100/p;f(i,l),s.addClass(L),u.find("."+w).show(),e.preventDefault()},i=function(){s.removeClass(L),u.find("."+w).hide()},t=function(){i&&i(),y.remove(),r.done&&r.done(o.value)},g("#LAY-slider-moving")[0]||g("body").append(y),y.on("mousemove",e),y.on("mouseup",t).on("mouseleave",t)})}),u.on("click",function(e){var i=g("."+T),t=g(this);!i.is(event.target)&&0===i.has(event.target).length&&i.length&&(t=(i=(i=(i="vertical"===r.type?d()-e.clientY+t.offset().top-g(window).scrollTop():e.clientX-t.offset().left-g(window).scrollLeft())<0?0:i)>d()?d():i)/d()*100/p,i=r.range?"vertical"===r.type?Math.abs(i-parseInt(g(c[0]).css("bottom")))>Math.abs(i-parseInt(g(c[1]).css("bottom")))?1:0:Math.abs(i-c[0].offsetLeft)>Math.abs(i-c[1].offsetLeft)?1:0:0,f(t,i,"done"),e.preventDefault())}),m.children(".layui-slider-input-btn").children("i").each(function(i){g(this).on("click",function(){v=m.children("."+M).children("input").val();var e=((v=1==i?v-r.stepr.max?r.max:Number(v)+r.step)-r.min)/(r.max-r.min)*100/p;f(e,0,"done")})});var a=function(){var e=this.value,e=(e=(e=(e=isNaN(e)?0:e)r.max?r.max:e,((this.value=e)-r.min)/(r.max-r.min)*100/p);f(e,0,"done")};m.children("."+M).children("input").on("keydown",function(e){13===e.keyCode&&(e.preventDefault(),a.call(this))}).on("change",a)},i.prototype.events=function(){this.config},m.render=function(e){e=new i(e);return function(){var t=this,a=t.config;return{setValue:function(e,i){return e=(e=e>a.max?a.max:e)',"",'','',"","","
            "].join("")),r=i.elem=m(i.elem);i.size&&o.addClass("layui-colorpicker-"+i.size),r.addClass("layui-inline").html(e.elemColorBox=o),i.id="id"in i?i.id:r.attr("id")||e.index,e.color=e.elemColorBox.find("."+C)[0].style.background,e.events()},d.prototype.renderPicker=function(){var o,e=this,i=e.config,r=e.elemColorBox[0],t=e.elemPicker=m(['
            ','
            ','
            ','
            ','
            ','
            ',"
            ",'
            ','
            ',"
            ","
            ",'
            ','
            ','
            ',"
            ","
            ",i.predefine?(o=['
            '],layui.each(i.colors,function(e,i){o.push(['
            ','
            ',"
            "].join(""))}),o.push("
            "),o.join("")):"",'
            ','
            ','',"
            ",'
            ','','',"","
            "].join(""));e.elemColorBox.find("."+C)[0];m(a)[0]&&m(a).data("index")==e.index?e.removePicker(d.thisElemInd):(e.removePicker(d.thisElemInd),m("body").append(t)),n.thisId=i.id,d.thisElemInd=e.index,d.thisColor=r.style.background,e.position(),e.pickerEvents()},d.prototype.removePicker=function(e){var i=this.config,e=m("#layui-colorpicker"+(e||this.index));return e[0]&&(e.remove(),delete n.thisId,"function"==typeof i.close)&&i.close(this.color),this},d.prototype.position=function(){var e=this,i=e.config;return t.position(e.bindElem||e.elemColorBox[0],e.elemPicker[0],{position:i.position,align:"center"}),e},d.prototype.val=function(){var e,i=this,o=(i.config,i.elemColorBox.find("."+C)),r=i.elemPicker.find("."+M),t=o[0].style.backgroundColor;t?(e=Y(L(t)),o=o.attr("lay-type"),i.select(e.h,e.s,e.b),"torgb"===o?r.find("input").val(t):"rgba"===o?(o=L(t),3===(t.match(/[0-9]{1,3}/g)||[]).length?(r.find("input").val("rgba("+o.r+", "+o.g+", "+o.b+", 1)"),i.elemPicker.find("."+T).css("left",280)):(r.find("input").val(t),t=280*t.slice(t.lastIndexOf(",")+1,t.length-1),i.elemPicker.find("."+T).css("left",t)),i.elemPicker.find("."+D)[0].style.background="linear-gradient(to right, rgba("+o.r+", "+o.g+", "+o.b+", 0), rgb("+o.r+", "+o.g+", "+o.b+"))"):r.find("input").val("#"+F(e))):(i.select(0,100,100),r.find("input").val(""),i.elemPicker.find("."+D)[0].style.background="",i.elemPicker.find("."+T).css("left",280))},d.prototype.side=function(){var n=this,l=n.config,c=n.elemColorBox.find("."+C),a=c.attr("lay-type"),s=n.elemPicker.find(".layui-colorpicker-side"),e=n.elemPicker.find("."+B),d=n.elemPicker.find("."+I),r=n.elemPicker.find("."+E),f=n.elemPicker.find("."+D),u=n.elemPicker.find("."+T),g=e[0].offsetTop/180*360,p=100-(r[0].offsetTop+3)/180*100,h=(r[0].offsetLeft+3)/260*100,v=Math.round(u[0].offsetLeft/280*100)/100,b=n.elemColorBox.find("."+w),i=n.elemPicker.find(".layui-colorpicker-pre").children("div"),y=function(e,i,o,r){n.select(e,i,o);var t=j({h:e,s:i,b:o}),e=F({h:e,s:i,b:o}),i=n.elemPicker.find("."+M).find("input");b.addClass(x).removeClass(P),c[0].style.background="rgb("+t.r+", "+t.g+", "+t.b+")","torgb"===a?i.val("rgb("+t.r+", "+t.g+", "+t.b+")"):"rgba"===a?(u.css("left",280*r),i.val("rgba("+t.r+", "+t.g+", "+t.b+", "+r+")"),c[0].style.background="rgba("+t.r+", "+t.g+", "+t.b+", "+r+")",f[0].style.background="linear-gradient(to right, rgba("+t.r+", "+t.g+", "+t.b+", 0), rgb("+t.r+", "+t.g+", "+t.b+"))"):i.val("#"+e),l.change&&l.change(n.elemPicker.find("."+M).find("input").val())},o=m(['
            '].join("")),k=function(e){m("#LAY-colorpicker-moving")[0]||m("body").append(o),o.on("mousemove",e),o.on("mouseup",function(){o.remove()}).on("mouseleave",function(){o.remove()})};e.on("mousedown",function(e){var r=this.offsetTop,t=e.clientY;k(function(e){var i=r+(e.clientY-t),o=s[0].offsetHeight,o=(i=o<(i=i<0?0:i)?o:i)/180*360;y(g=o,h,p,v),e.preventDefault()}),e.preventDefault()}),s.on("click",function(e){var i=e.clientY-m(this).offset().top+H.scrollTop(),i=(i=(i=i<0?0:i)>this.offsetHeight?this.offsetHeight:i)/180*360;y(g=i,h,p,v),e.preventDefault()}),r.on("mousedown",function(e){var n=this.offsetTop,l=this.offsetLeft,c=e.clientY,a=e.clientX;layui.stope(e),k(function(e){var i=n+(e.clientY-c),o=l+(e.clientX-a),r=d[0].offsetHeight-3,t=d[0].offsetWidth-3,t=((o=t<(o=o<-3?-3:o)?t:o)+3)/260*100,o=100-((i=r<(i=i<-3?-3:i)?r:i)+3)/180*100;y(g,h=t,p=o,v),e.preventDefault()}),e.preventDefault()}),d.on("mousedown",function(e){var i=e.clientY-m(this).offset().top-3+H.scrollTop(),o=e.clientX-m(this).offset().left-3+H.scrollLeft(),o=((i=i<-3?-3:i)>this.offsetHeight-3&&(i=this.offsetHeight-3),((o=(o=o<-3?-3:o)>this.offsetWidth-3?this.offsetWidth-3:o)+3)/260*100),i=100-(i+3)/180*100;y(g,h=o,p=i,v),layui.stope(e),e.preventDefault(),r.trigger(e,"mousedown")}),u.on("mousedown",function(e){var r=this.offsetLeft,t=e.clientX;k(function(e){var i=r+(e.clientX-t),o=f[0].offsetWidth,o=(o<(i=i<0?0:i)&&(i=o),Math.round(i/280*100)/100);y(g,h,p,v=o),e.preventDefault()}),e.preventDefault()}),f.on("click",function(e){var i=e.clientX-m(this).offset().left,i=((i=i<0?0:i)>this.offsetWidth&&(i=this.offsetWidth),Math.round(i/280*100)/100);y(g,h,p,v=i),e.preventDefault()}),i.each(function(){m(this).on("click",function(){m(this).parent(".layui-colorpicker-pre").addClass("selected").siblings().removeClass("selected");var e=this.style.backgroundColor,i=Y(L(e)),o=e.slice(e.lastIndexOf(",")+1,e.length-1);g=i.h,h=i.s,p=i.b,3===(e.match(/[0-9]{1,3}/g)||[]).length&&(o=1),v=o,y(i.h,i.s,i.b,o)})})},d.prototype.select=function(e,i,o,r){this.config;var t=F({h:e,s:100,b:100}),e=(F({h:e,s:i,b:o}),e/360*180),o=180-o/100*180-3,i=i/100*260-3;this.elemPicker.find("."+B).css("top",e),this.elemPicker.find("."+I)[0].style.background="#"+t,this.elemPicker.find("."+E).css({top:o,left:i})},d.prototype.pickerEvents=function(){var c=this,a=c.config,s=c.elemColorBox.find("."+C),d=c.elemPicker.find("."+M+" input"),o={clear:function(e){s[0].style.background="",c.elemColorBox.find("."+w).removeClass(x).addClass(P),c.color="",a.done&&a.done(""),c.removePicker()},confirm:function(e,i){var o,r,t,n,l=d.val();-1>16,g:(65280&t)>>8,b:255&t},r=Y(n),s[0].style.background=o="#"+F(r),c.elemColorBox.find("."+w).removeClass(P).addClass(x)),"change"===i?(c.select(r.h,r.s,r.b,i),a.change&&a.change(o)):(c.color=l,a.done&&a.done(l),c.removePicker())}};c.elemPicker.on("click","*[colorpicker-events]",function(){var e=m(this),i=e.attr("colorpicker-events");o[i]&&o[i].call(this,e)}),d.on("keyup",function(e){var i=m(this);o.confirm.call(this,i,13===e.keyCode?null:"change")})},d.prototype.events=function(){var e=this;e.config;e.elemColorBox.on("click",function(){e.renderPicker(),m(a)[0]&&(e.val(),e.side())})},s.on(i,function(e){var i,o,r;n.thisId&&(i=l.getThis(n.thisId))&&(o=i.config,r=i.elemColorBox.find("."+C),m(e.target).hasClass(c)||m(e.target).parents("."+c)[0]||m(e.target).hasClass(a.replace(/\./g,""))||m(e.target).parents(a)[0]||i.elemPicker&&(i.color?(e=Y(L(i.color)),i.select(e.h,e.s,e.b)):i.elemColorBox.find("."+w).removeClass(x).addClass(P),r[0].style.background=i.color||"","function"==typeof o.cancel&&o.cancel(i.color),i.removePicker()))}),H.on("resize",function(){if(n.thisId){var e=l.getThis(n.thisId);if(e)return!(!e.elemPicker||!m(a)[0])&&void e.position()}}),l.that={},l.getThis=function(e){var i=l.that[e];return i||o.error(e?r+" instance with ID '"+e+"' not found":"ID argument required"),i},n.render=function(e){e=new d(e);return l.call(e)},e(r,n)});layui.define("jquery",function(t){"use strict";var u=layui.$,d=(layui.hint(),layui.device()),o="element",c="layui-this",h="layui-show",r=".layui-tab-title",i=function(){this.config={}},y=(i.prototype.set=function(t){return u.extend(!0,this.config,t),this},i.prototype.on=function(t,i){return layui.onevent.call(this,o,t,i)},i.prototype.tabAdd=function(t,i){var a,e=u(".layui-tab[lay-filter="+t+"]"),l=e.children(r),n=l.children(".layui-tab-bar"),e=e.children(".layui-tab-content"),s=""+(i.title||"unnaming")+"";return n[0]?n.before(s):l.append(s),e.append('
            '+(i.content||"")+"
            "),i.change&&this.tabChange(t,i.id),l.data("LAY_TAB_CHANGE",i.change),g.tabAuto(i.change?"change":null),this},i.prototype.tabDelete=function(t,i){t=u(".layui-tab[lay-filter="+t+"]").children(r).find('>li[lay-id="'+i+'"]');return g.tabDelete(null,t),this},i.prototype.tabChange=function(t,i){t=u(".layui-tab[lay-filter="+t+"]").children(r).find('>li[lay-id="'+i+'"]');return g.tabClick.call(t[0],{liElem:t}),this},i.prototype.tab=function(a){a=a||{},e.on("click",a.headerElem,function(t){var i=u(this).index();g.tabClick.call(this,{index:i,options:a})})},i.prototype.progress=function(t,i){var a="layui-progress",t=u("."+a+"[lay-filter="+t+"]").find("."+a+"-bar"),a=t.find("."+a+"-text");return t.css("width",function(){return/^.+\/.+$/.test(i)?100*new Function("return "+i)()+"%":i}).attr("lay-percent",i),a.text(i),this},".layui-nav"),f="layui-nav-item",l="layui-nav-bar",p="layui-nav-tree",b="layui-nav-child",v="layui-nav-more",m="layui-anim layui-anim-upbit",g={tabClick:function(t){var i=(t=t||{}).options||{},a=t.liElem||u(this),e=i.headerElem?a.parent():a.parents(".layui-tab").eq(0),i=i.bodyElem?u(i.bodyElem):e.children(".layui-tab-content").children(".layui-tab-item"),l=a.find("a"),l="javascript:;"!==l.attr("href")&&"_blank"===l.attr("target"),n="string"==typeof a.attr("lay-unselect"),s=e.attr("lay-filter"),t="index"in t?t.index:a.parent().children("li").index(a);l||n||(a.addClass(c).siblings().removeClass(c),i.eq(t).addClass(h).siblings().removeClass(h)),layui.event.call(this,o,"tab("+s+")",{elem:e,index:t})},tabDelete:function(t,i){var i=i||u(this).parent(),a=i.parent().children("li").index(i),e=i.closest(".layui-tab"),l=e.children(".layui-tab-content").children(".layui-tab-item"),n=e.attr("lay-filter");i.hasClass(c)&&(i.next()[0]&&i.next().is("li")?g.tabClick.call(i.next()[0],{index:a+1}):i.prev()[0]&&i.prev().is("li")&&g.tabClick.call(i.prev()[0],null,a-1)),i.remove(),l.eq(a).remove(),setTimeout(function(){g.tabAuto()},50),layui.event.call(this,o,"tabDelete("+n+")",{elem:e,index:a})},tabAuto:function(l){var n="layui-tab-more",s="layui-tab-bar",o="layui-tab-close",c=this;u(".layui-tab").each(function(){var t,i=u(this),a=i.children(".layui-tab-title"),e=(i.children(".layui-tab-content").children(".layui-tab-item"),'lay-stope="tabmore"'),e=u('');c===window&&d.ie,i.attr("lay-allowclose")&&a.find("li").each(function(){var t,i=u(this);i.find("."+o)[0]||((t=u('')).on("click",g.tabDelete),i.append(t))}),"string"!=typeof i.attr("lay-unauto")&&(a.prop("scrollWidth")>a.outerWidth()+1||a.find("li").length&&a.height()>(t=a.find("li").eq(0).height())+t/2?("change"===l&&a.data("LAY_TAB_CHANGE")&&a.addClass(n),a.find("."+s)[0]||(a.append(e),i.attr("overflow",""),e.on("click",function(t){var i=a.hasClass(n);a[i?"removeClass":"addClass"](n)}))):(a.find("."+s).remove(),i.removeAttr("overflow")))})},hideTabMore:function(t){var i=u(".layui-tab-title");!0!==t&&"tabmore"===u(t.target).attr("lay-stope")||(i.removeClass("layui-tab-more"),i.find(".layui-tab-bar").attr("title",""))},clickThis:function(){var t=u(this),i=t.parents(y),a=i.attr("lay-filter"),e=t.parent(),l=t.siblings("."+b),n="string"==typeof e.attr("lay-unselect");"javascript:;"!==t.attr("href")&&"_blank"===t.attr("target")||n||l[0]||(i.find("."+c).removeClass(c),e.addClass(c)),i.hasClass(p)&&(l.removeClass(m),l[0])&&(e["none"===l.css("display")?"addClass":"removeClass"](f+"ed"),"all"===i.attr("lay-shrink"))&&e.siblings().removeClass(f+"ed"),layui.event.call(this,o,"nav("+a+")",t)},collapse:function(){var t=u(this),i=t.find(".layui-colla-icon"),a=t.siblings(".layui-colla-content"),e=t.parents(".layui-collapse").eq(0),l=e.attr("lay-filter"),n="none"===a.css("display");"string"==typeof e.attr("lay-accordion")&&((e=e.children(".layui-colla-item").children("."+h)).siblings(".layui-colla-title").children(".layui-colla-icon").html(""),e.removeClass(h)),a[n?"addClass":"removeClass"](h),i.html(n?"":""),layui.event.call(this,o,"collapse("+l+")",{title:t,content:a,show:n})}},a=(i.prototype.render=i.prototype.init=function(t,i){var a=i?'[lay-filter="'+i+'"]':"",i={tab:function(){g.tabAuto.call({})},nav:function(){var s={},o={},c={},r="layui-nav-title";u(y+a).each(function(t){var i=u(this),a=u(''),e=i.find("."+f);i.find("."+l)[0]||(i.append(a),(i.hasClass(p)?e.find("dd,>."+r):e).on("mouseenter",function(){!function(t,i,a){var e,l=u(this),n=l.find("."+b);i.hasClass(p)?n[0]||(e=l.children("."+r),t.css({top:l.offset().top-i.offset().top,height:(e[0]?e:l).outerHeight(),opacity:1})):(n.addClass(m),n.hasClass("layui-nav-child-c")&&n.css({left:-(n.outerWidth()-l.width())/2}),n[0]?t.css({left:t.position().left+t.width()/2,width:0,opacity:0}):t.css({left:l.position().left+parseFloat(l.css("marginLeft")),top:l.position().top+l.height()-t.height()}),s[a]=setTimeout(function(){t.css({width:n[0]?0:l.width(),opacity:n[0]?0:1})},d.ie&&d.ie<10?0:200),clearTimeout(c[a]),"block"===n.css("display")&&clearTimeout(o[a]),o[a]=setTimeout(function(){n.addClass(h),l.find("."+v).addClass(v+"d")},300))}.call(this,a,i,t)}).on("mouseleave",function(){i.hasClass(p)?a.css({height:0,opacity:0}):(clearTimeout(o[t]),o[t]=setTimeout(function(){i.find("."+b).removeClass(h),i.find("."+v).removeClass(v+"d")},300))}),i.on("mouseleave",function(){clearTimeout(s[t]),c[t]=setTimeout(function(){i.hasClass(p)||a.css({width:0,left:a.position().left+a.width()/2,opacity:0})},200)})),e.find("a").each(function(){var t=u(this);t.parent();t.siblings("."+b)[0]&&!t.children("."+v)[0]&&t.append(''),t.off("click",g.clickThis).on("click",g.clickThis)})})},breadcrumb:function(){u(".layui-breadcrumb"+a).each(function(){var t=u(this),i="lay-separator",a=t.attr(i)||"/",e=t.find("a");e.next("span["+i+"]")[0]||(e.each(function(t){t!==e.length-1&&u(this).after(""+a+"")}),t.css("visibility","visible"))})},progress:function(){var e="layui-progress";u("."+e+a).each(function(){var t=u(this),i=t.find(".layui-progress-bar"),a=i.attr("lay-percent");i.css("width",function(){return/^.+\/.+$/.test(a)?100*new Function("return "+a)()+"%":a}),t.attr("lay-showpercent")&&setTimeout(function(){i.html(''+a+"")},350)})},collapse:function(){u(".layui-collapse"+a).each(function(){u(this).find(".layui-colla-item").each(function(){var t=u(this),i=t.find(".layui-colla-title"),t="none"===t.find(".layui-colla-content").css("display");i.find(".layui-colla-icon").remove(),i.append(''+(t?"":"")+""),i.off("click",g.collapse).on("click",g.collapse)})})}};return i[t]?i[t]():layui.each(i,function(t,i){i()})},new i),e=u(document);u(function(){a.render()}),e.on("click",".layui-tab-title li",g.tabClick),u(window).on("resize",g.tabAuto),t(o,a)});layui.define(["lay","layer"],function(e){"use strict";var F=layui.$,t=layui.layer,b=layui.device(),i={config:{},set:function(e){var t=this;return t.config=F.extend({},t.config,e),t},on:function(e,t){return layui.onevent.call(this,n,e,t)}},n="upload",a="layui-upload-file",o="layui-upload-form",x="layui-upload-iframe",w="layui-upload-choose",j=function(e){var t=this;t.config=F.extend({},t.config,i.config,e),t.render()};j.prototype.config={accept:"images",exts:"",auto:!0,bindAction:"",url:"",force:"",field:"file",acceptMime:"",method:"post",data:{},drag:!0,size:0,number:0,multiple:!1},j.prototype.render=function(e){var t=this;(e=t.config).elem=F(e.elem),e.bindAction=F(e.bindAction),t.file(),t.events()},j.prototype.file=function(){var e=this,t=e.config,i=e.elemFile=F(['"].join("")),n=t.elem.next();(n.hasClass(a)||n.hasClass(o))&&n.remove(),b.ie&&b.ie<10&&t.elem.wrap('
            '),e.isFile()?(e.elemFile=t.elem,t.field=t.elem[0].name):t.elem.after(i),b.ie&&b.ie<10&&e.initIE()},j.prototype.initIE=function(){var i,e=this.config,t=F(''),n=F(['
            ',"
            "].join(""));F("#"+x)[0]||F("body").append(t),e.elem.next().hasClass(o)||(this.elemFile.wrap(n),e.elem.next("."+o).append((i=[],layui.each(e.data,function(e,t){t="function"==typeof t?t():t,i.push('')}),i.join(""))))},j.prototype.msg=function(e){return t.msg(e,"warning")},j.prototype.isFile=function(){var e=this.config.elem[0];if(e)return"input"===e.tagName.toLocaleLowerCase()&&"file"===e.type},j.prototype.preview=function(n){window.FileReader&&layui.each(this.chooseFiles,function(e,t){var i=new FileReader;i.readAsDataURL(t),i.onload=function(){n&&n(e,t,this.result)}})},j.prototype.upload=function(e,t,l){var i,n,a,o,r=this,u=r.config,c=r.elemFile[0],s=function(){return e||r.files||r.chooseFiles||c.files},f=function(){var t=0,a=0,e=s(),o=function(){u.multiple&&t+a===r.fileLength&&"function"==typeof u.allDone&&u.allDone({total:r.fileLength,successful:t,failed:a})};layui.each(e,function(i,e){var n=new FormData,e=(n.append(u.field,e,l),layui.each(u.data,function(e,t){t="function"==typeof t?t():t,n.append(e,t)}),{url:u.url,type:"post",data:n,contentType:!1,processData:!1,dataType:"json",headers:u.headers||{},success:function(e){t++,d(i,e),o()},error:function(e){a++,r.msg(["Upload failed, please try again.","status: "+(e.status||"")+" - "+(e.statusText||"error")].join("
            ")),m(i),o()}});"function"==typeof u.progress&&(e.xhr=function(){var e=F.ajaxSettings.xhr();return e.upload.addEventListener("progress",function(e){var t;e.lengthComputable&&(t=Math.floor(e.loaded/e.total*100),u.progress(t,(u.item||u.elem)[0],e,i))}),e}),F.ajax(e)})},p=function(){var n=F("#"+x);r.elemFile.parent().submit(),clearInterval(j.timer),j.timer=setInterval(function(){var e,t=n.contents().find("body");try{e=t.text()}catch(i){r.msg("Cross-domain requests are not supported"),clearInterval(j.timer),m()}e&&(clearInterval(j.timer),t.html(""),d(0,e))},30)},d=function(e,t){if(r.elemFile.next("."+w).remove(),c.value="","json"===u.force&&"object"!=typeof t)try{t=JSON.parse(t)}catch(i){return t={},r.msg("Please return JSON data format")}"function"==typeof u.done&&u.done(t,e||0,function(e){r.upload(e)})},m=function(e){u.auto&&(c.value=""),"function"==typeof u.error&&u.error(e||0,function(e){r.upload(e)})},h=u.exts,g=(n=[],layui.each(e||r.chooseFiles,function(e,t){n.push(t.name)}),n),v={preview:function(e){r.preview(e)},upload:function(e,t,i){var n={};n[e]=t,r.upload(n,"post",i)},pushFile:function(){return r.files=r.files||{},layui.each(r.chooseFiles,function(e,t){r.files[e]=t}),r.files},resetFile:function(e,t,i){t=new File([t],i);r.files=r.files||{},r.files[e]=t}},y={file:"\u6587\u4ef6",images:"\u56fe\u7247",video:"\u89c6\u9891",audio:"\u97f3\u9891"}[u.accept]||"\u6587\u4ef6",g=0===g.length?c.value.match(/[^\/\\]+\..+/g)||[]:g;if(0!==g.length){switch(u.accept){case"file":layui.each(g,function(e,t){if(h&&!RegExp(".\\.("+h+")$","i").test(escape(t)))return i=!0});break;case"video":layui.each(g,function(e,t){if(!RegExp(".\\.("+(h||"avi|mp4|wma|rmvb|rm|flash|3gp|flv")+")$","i").test(escape(t)))return i=!0});break;case"audio":layui.each(g,function(e,t){if(!RegExp(".\\.("+(h||"mp3|wav|mid")+")$","i").test(escape(t)))return i=!0});break;default:layui.each(g,function(e,t){if(!RegExp(".\\.("+(h||"jpg|png|gif|bmp|jpeg|svg")+")$","i").test(escape(t)))return i=!0})}if(i)return r.msg("\u9009\u62e9\u7684"+y+"\u4e2d\u5305\u542b\u4e0d\u652f\u6301\u7684\u683c\u5f0f"),c.value="";if("choose"!==t&&!u.auto||(u.choose&&u.choose(v),"choose"!==t)){if(r.fileLength=(a=0,y=s(),layui.each(y,function(){a++}),a),u.number&&r.fileLength>u.number)return r.msg("\u540c\u65f6\u6700\u591a\u53ea\u80fd\u4e0a\u4f20: "+u.number+" \u4e2a\u6587\u4ef6
            \u60a8\u5f53\u524d\u5df2\u7ecf\u9009\u62e9\u4e86: "+r.fileLength+" \u4e2a\u6587\u4ef6");if(01024*u.size&&(t=1<=(t=u.size/1024)?t.toFixed(2)+"MB":u.size+"KB",c.value="",o=t)}),o)return r.msg("\u6587\u4ef6\u5927\u5c0f\u4e0d\u80fd\u8d85\u8fc7 "+o);if(!u.before||!1!==u.before(v))b.ie?(9'+e+"")},r=function(){var e=F(this);(e.attr("lay-data")||e.attr("lay-options"))&&(n.config=F.extend({},a,lay.options(this,{attr:e.attr("lay-data")?"lay-data":null})))};a.elem.off("upload.start").on("upload.start",function(){var e=F(this);r.call(this),n.config.item=e,n.elemFile[0].click()}),b.ie&&b.ie<10||a.elem.off("upload.over").on("upload.over",function(){F(this).attr("lay-over","")}).off("upload.leave").on("upload.leave",function(){F(this).removeAttr("lay-over")}).off("upload.drop").on("upload.drop",function(e,t){var i=F(this),t=t.originalEvent.dataTransfer.files||[];i.removeAttr("lay-over"),r.call(this),o(t),a.auto?n.upload():l(t)}),n.elemFile.off("upload.change").on("upload.change",function(){var e=this.files||[];r.call(this),o(e),a.auto?n.upload():l(e)}),a.bindAction.off("upload.action").on("upload.action",function(){n.upload()}),a.elem.data("haveEvents")||(n.elemFile.on("change",function(){F(this).trigger("upload.change")}),a.elem.on("click",function(){n.isFile()||F(this).trigger("upload.start")}),a.drag&&a.elem.on("dragover",function(e){e.preventDefault(),F(this).trigger("upload.over")}).on("dragleave",function(e){F(this).trigger("upload.leave")}).on("drop",function(e){e.preventDefault(),F(this).trigger("upload.drop",e)}),a.bindAction.on("click",function(){F(this).trigger("upload.action")}),a.elem.data("haveEvents",!0))},i.render=function(e){e=new j(e);return function(){var t=this;return{upload:function(e){t.upload.call(t,e)},reload:function(e){t.reload.call(t,e)},config:t.config}}.call(e)},e(n,i)});layui.define(["lay","layer","util"],function(e){"use strict";var b=layui.$,y=layui.layer,d=layui.util,n=layui.hint(),w=(layui.device(),"form"),o=".layui-form",T="layui-this",$="layui-hide",q="layui-disabled",t=function(){this.config={verify:{required:[/[\S]+/,"\u5fc5\u586b\u9879\u4e0d\u80fd\u4e3a\u7a7a"],phone:[/^1\d{10}$/,"\u8bf7\u8f93\u5165\u6b63\u786e\u7684\u624b\u673a\u53f7"],email:[/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/,"\u90ae\u7bb1\u683c\u5f0f\u4e0d\u6b63\u786e"],url:[/^(#|(http(s?)):\/\/|\/\/)[^\s]+\.[^\s]+$/,"\u94fe\u63a5\u683c\u5f0f\u4e0d\u6b63\u786e"],number:function(e){if(isNaN(e))return"\u53ea\u80fd\u586b\u5199\u6570\u5b57"},date:[/^(\d{4})[-\/](\d{1}|0\d{1}|1[0-2])([-\/](\d{1}|0\d{1}|[1-2][0-9]|3[0-1]))*$/,"\u65e5\u671f\u683c\u5f0f\u4e0d\u6b63\u786e"],identity:[/(^\d{15}$)|(^\d{17}(x|X|\d)$)/,"\u8bf7\u8f93\u5165\u6b63\u786e\u7684\u8eab\u4efd\u8bc1\u53f7"]},verIncludelRequired:!1,autocomplete:null}},i=(t.prototype.set=function(e){return b.extend(!0,this.config,e),this},t.prototype.verify=function(e){return b.extend(!0,this.config.verify,e),this},t.prototype.getFormElem=function(e){return b(o+(e?'[lay-filter="'+e+'"]':""))},t.prototype.on=function(e,t){return layui.onevent.call(this,w,e,t)},t.prototype.val=function(e,i){return this.getFormElem(e).each(function(e,t){var a=b(this);layui.each(i,function(e,t){var i,e=a.find('[name="'+e+'"]');e[0]&&("checkbox"===(i=e[0].type)?e[0].checked=t:"radio"===i?e.each(function(){this.checked=this.value==t}):e.val(t))})}),r.render(null,e),this.getValue(e)},t.prototype.getValue=function(e,t){t=t||this.getFormElem(e);var a={},l={},e=t.find("input,select,textarea");return layui.each(e,function(e,t){var i;b(this);t.name=(t.name||"").replace(/^\s*|\s*&/,""),t.name&&(/^.*\[\]$/.test(t.name)&&(i=t.name.match(/^(.*)\[\]$/g)[0],a[i]=0|a[i],i=t.name.replace(/^(.*)\[\]$/,"$1["+a[i]+++"]")),/^(checkbox|radio)$/.test(t.type)&&!t.checked||(l[i||t.name]=t.value))}),l},t.prototype.render=function(e,t){var i=this.config,a=b(o+(t?'[lay-filter="'+t+'"]':"")),l={input:function(e){e=e||a.find("input,textarea");i.autocomplete&&e.attr("autocomplete",i.autocomplete),a.find("input[lay-affix],textarea[lay-affix]").each(function(){var n=b(this),r=n.attr("lay-affix"),s="layui-input-suffix",o="layui-input-affix",e=n.is("[disabled]")||n.is("[readonly]"),c=function(e,t){(e=b(e))[0]&&e[b.trim(t)?"removeClass":"addClass"]($)},l=function(t){t=b.extend({},u[r]||{value:r},t,lay.options(n[0]));var i=b('
            '),e=b(''),a=(i.append(e),t.split&&i.addClass("layui-input-split"),n.next("."+o)),l=(a[0]&&a.remove(),n.next("."+s));l[0]?((a=l.find("."+o))[0]&&a.remove(),l.prepend(i),n.css("padding-right",function(){return(n.closest(".layui-input-group")[0]?0:l.outerWidth())+i.outerWidth()})):(i.addClass(s),n.after(i)),"auto"===t.show&&c(i,n.val()),n.on("input propertychange",function(){var e=this.value;"auto"===t.show&&c(i,e)}),e.on("click",function(){var e=n.attr("lay-filter");b(this).hasClass(q)||("function"==typeof t.click&&t.click.call(this,n,t),layui.event.call(this,w,"input-affix("+e+")",{elem:n[0],affix:r,options:t}))})},u={eye:{value:"eye-invisible",click:function(e,t){var i="LAY_FORM_INPUT_AFFIX_SHOW",a=e.data(i);e.attr("type",a?"password":"text").data(i,!a),l({value:a?"eye-invisible":"eye"})}},clear:{value:"clear",click:function(e){e.val("").focus(),c(b(this).parent(),null)},show:"auto",disabled:e}};l()})},select:function(e){var p,c="\u8bf7\u9009\u62e9",m="layui-form-select",g="layui-select-title",x="layui-select-none",k="",e=e||a.find("select"),C=function(e,t){b(e.target).parent().hasClass(g)&&!t||(b("."+m).removeClass(m+"ed "+m+"up"),p&&k&&p.val(k)),p=null},u=function(a,e,t){var s,r,i,l,o,n,c=b(this),u=a.find("."+g),d=u.find("input"),f=a.find("dl"),h=f.children("dd"),y=f.children("dt"),v=this.selectedIndex;e||(r=c.attr("lay-search"),i=function(){var e=a.offset().top+a.outerHeight()+5-F.scrollTop(),t=f.outerHeight(),t=(v=c[0].selectedIndex,a.addClass(m+"ed"),h.removeClass($),y.removeClass($),s=null,h.removeClass(T),0<=v&&h.eq(v).addClass(T),e+t>F.height()&&t<=e&&a.addClass(m+"up"),b.trim(d.val()));t&&(d.attr("placeholder",t),d.val("")),o()},l=function(e){a.removeClass(m+"ed "+m+"up"),d.blur(),s=null,e||n(d.val(),function(e){var t=c[0].selectedIndex;e&&(k=b(c[0].options[t]).html(),0===t&&k===d.attr("placeholder")&&(k=""),d.val(k||""))})},o=function(){var e,t,i=f.children("dd."+T);i[0]&&(e=i.position().top,t=f.height(),i=i.height(),t\u65e0\u5339\u914d\u9879

            '):f.find("."+x).remove()},"keyup"),""===t&&(c.val(""),f.find("."+T).removeClass(T),(c[0].options[0]||{}).value||f.children("dd:eq(0)").addClass(T),f.find("."+x).remove()),o()}).on("blur",function(e){var t=c[0].selectedIndex;p=d,k=b(c[0].options[t]).text(),0===t&&k===d.attr("placeholder")&&(k=""),setTimeout(function(){n(d.val(),function(e){k||d.val("")},"blur")},200)}),h.on("click",function(){var e=b(this),t=e.attr("lay-value"),i=c.attr("lay-filter");return e.hasClass(q)||(e.hasClass("layui-select-tips")?d.val(""):(d.val(e.text()),e.addClass(T)),e.siblings().removeClass(T),c.val(t).removeClass("layui-form-danger"),layui.event.call(this,w,"select("+i+")",{elem:c[0],value:t,othis:a}),l(!0)),!1}),a.find("dl>dt").on("click",function(e){return!1}),b(document).off("click",C).on("click",C))};e.each(function(e,t){var i=b(this),a=i.next("."+m),l=this.disabled,n=t.value,r=b(t.options[t.selectedIndex]),t=t.options[0];if("string"==typeof i.attr("lay-ignore"))return i.show();var s,o="string"==typeof i.attr("lay-search"),t=t&&!t.value&&t.innerHTML||c,r=b(['
            ','
            ','','
            ','
            ',(t=i.find("*"),s=[],layui.each(t,function(e,t){var i=t.tagName.toLowerCase();0!==e||t.value||"optgroup"===i?s.push("optgroup"===i?"
            "+t.label+"
            ":'
            '+b.trim(t.innerHTML)+"
            "):s.push('
            '+b.trim(t.innerHTML||c)+"
            ")}),0===s.length&&s.push('
            \u6ca1\u6709\u9009\u9879
            '),s.join("")+"
            "),"
            "].join(""));a[0]&&a.remove(),i.after(r),u.call(this,r,l,o)})},checkbox:function(e){var o={checkbox:["layui-form-checkbox","layui-form-checked","checkbox"],"switch":["layui-form-switch","layui-form-onswitch","switch"],SUBTRA:"layui-icon-indeterminate"},e=e||a.find("input[type=checkbox]");e.each(function(e,t){var i=b(this),a=i.attr("lay-skin")||"primary",l=d.escape(b.trim(t.title||(t.title=i.attr("lay-text")||""))),n=this.disabled,r=o[a]||o.checkbox,s=i.next("."+r[0]);if(s[0]&&s.remove(),i.next("[lay-checkbox]")[0]&&(l=i.next().html()||""),l="switch"===a?l.split("|"):[l],"string"==typeof i.attr("lay-ignore"))return i.show();n=b(['
            ",(s={checkbox:[l[0]?"
            "+l[0]+"
            ":"primary"===a?"":"
            ",''].join(""),"switch":"
            "+((t.checked?l[0]:l[1])||"")+"
            "})[a]||s.checkbox,"
            "].join(""));i.after(n),function(a,l){var n=b(this);a.on("click",function(){var e=b(this),t=n.attr("lay-filter"),e=e.next("*[lay-checkbox]")[0]?e.next().html():n.attr("title")||"",i=n.attr("lay-skin")||"primary",e="switch"===i?e.split("|"):[e];n[0].disabled||(n[0].indeterminate&&(n[0].indeterminate=!1,a.find("."+o.SUBTRA).removeClass(o.SUBTRA).addClass("layui-icon-ok")),n[0].checked?(n[0].checked=!1,a.removeClass(l[1]),"switch"===i&&a.children("div").html(e[1])):(n[0].checked=!0,a.addClass(l[1]),"switch"===i&&a.children("div").html(e[0])),layui.event.call(n[0],w,l[2]+"("+t+")",{elem:n[0],value:n[0].value,othis:a}))})}.call(this,n,r)})},radio:function(e){var r="layui-form-radio",s=["layui-icon-radio","layui-icon-circle"],e=e||a.find("input[type=radio]");e.each(function(e,t){var i=b(this),a=i.next("."+r),l=this.disabled;if("string"==typeof i.attr("lay-ignore"))return i.show();a[0]&&a.remove();l=b(['
            ','',"
            "+(a=d.escape(t.title||""),a=i.next("[lay-radio]")[0]?i.next().html():a)+"
            ","
            "].join(""));i.after(l),function(a){var l=b(this),n="layui-anim-scaleSpring";a.on("click",function(){var e=l[0].name,t=l.parents(o),i=l.attr("lay-filter"),e=t.find("input[name="+e.replace(/(\.|#|\[|\])/g,"\\$1")+"]");l[0].disabled||(layui.each(e,function(){var e=b(this).next("."+r);this.checked=!1,e.removeClass(r+"ed"),e.find(".layui-icon").removeClass(n+" "+s[0]).addClass(s[1])}),l[0].checked=!0,a.addClass(r+"ed"),a.find(".layui-icon").addClass(n+" "+s[0]),layui.event.call(l[0],w,"radio("+i+")",{elem:l[0],value:l[0].value,othis:a}))})}.call(this,l)})}},t=function(){layui.each(l,function(e,t){t()})};return"object"===layui.type(e)?b(e).is(o)?(a=b(e),t()):e.each(function(e,t){var i=b(t);i.closest(o).length&&("SELECT"===t.tagName?l.select(i):"INPUT"===t.tagName&&("checkbox"===(t=t.type)||"radio"===t?l[t](i):l.input(i)))}):e?l[e]?l[e]():n.error('\u4e0d\u652f\u6301\u7684 "'+e+'" \u8868\u5355\u6e32\u67d3'):t(),this},t.prototype.validate=function(e){var u=null,d=this.config,f=d.verify,h="layui-form-danger";return!(e=b(e))[0]||(e.attr("lay-verify")!==undefined||!1!==this.validate(e.find("*[lay-verify]")))&&(layui.each(e,function(e,r){var s=b(this),t=(s.attr("lay-verify")||"").split("|"),o=s.attr("lay-vertype"),c=b.trim(s.val());if(s.removeClass(h),layui.each(t,function(e,t){var i="",a=f[t];if(a){var l="function"==typeof a?i=a(c,r):!a[0].test(c),n="select"===r.tagName.toLowerCase()||/^(checkbox|radio)$/.test(r.type),i=i||a[1];if("required"===t&&(i=s.attr("lay-reqtext")||i),l&&(d.verIncludelRequired||"required"===t||c&&"required"!==t))return"tips"===o?y.tips(i,"string"!=typeof s.attr("lay-ignore")&&n?s.next():s,{tips:1}):"alert"===o?y.alert(i,{title:"\u63d0\u793a",shadeClose:!0}):/\b(string|number)\b/.test(typeof i)&&y.error(i),setTimeout(function(){(n?s.next().find("input"):r).focus()},7),s.addClass(h),u=!0}}),u)return u}),!u)},t.prototype.submit=function(e,t){var i={},a=b(this),e="string"==typeof e?e:a.attr("lay-filter"),l=this.getFormElem?this.getFormElem(e):a.parents(o).eq(0),n=l.find("*[lay-verify]");return!!r.validate(n)&&(i=r.getValue(null,l),n={elem:this.getFormElem?window.event&&window.event.target:this,form:(this.getFormElem?l:a.parents("form"))[0],field:i},"function"==typeof t&&t(n),layui.event.call(this,w,"submit("+e+")",n))}),r=new t,t=b(document),F=b(window);b(function(){r.render()}),t.on("reset",o,function(){var e=b(this).attr("lay-filter");setTimeout(function(){r.render(null,e)},50)}),t.on("submit",o,i).on("click","*[lay-submit]",i),e(w,r)});layui.define(["lay","laytpl","laypage","form","util"],function(n){"use strict";var p=layui.$,r=layui.lay,m=layui.laytpl,O=layui.laypage,f=layui.layer,v=layui.form,g=layui.util,y=layui.hint(),b=layui.device(),x={config:{checkName:"LAY_CHECKED",indexName:"LAY_INDEX",numbersName:"LAY_NUM",disabledName:"LAY_DISABLED"},cache:{},index:layui.table?layui.table.index+1e4:0,set:function(e){var t=this;return t.config=p.extend({},t.config,e),t},on:function(e,t){return layui.onevent.call(this,T,e,t)}},k=function(){var a=this,e=a.config,i=e.id||e.index;return{config:e,reload:function(e,t){a.reload.call(a,e,t)},reloadData:function(e,t){x.reloadData(i,e,t)},setColsWidth:function(){a.setColsWidth.call(a)},resize:function(){a.resize.call(a)}}},C=function(e){var t=k.that[e];return t||y.error(e?"The table instance with ID '"+e+"' not found":"ID argument required"),t||null},l=function(e){var t=k.config[e];return t||y.error(e?"The table instance with ID '"+e+"' not found":"ID argument required"),t||null},w=function(e){var t=this.config||{},a=(e=e||{}).item3,i=e.content;"numbers"===a.type&&(i=e.tplData[x.config.numbersName]);("escape"in a?a:t).escape&&(i=g.escape(i));t=e.text&&a.exportTemplet||a.templet||a.toolbar;return t&&(i="function"==typeof t?t.call(a,e.tplData,e.obj):m(p(t).html()||String(i)).render(p.extend({LAY_COL:a},e.tplData))),e.text?p("
            "+i+"
            ").text():i},T="table",t=".layui-table",N="layui-hide",h="layui-hide-v",L="layui-none",A="layui-table-view",o=".layui-table-header",R=".layui-table-body",D=".layui-table-pageview",_=".layui-table-sort",E="layui-table-checked",H="layui-table-edit",W="layui-table-hover",M="laytable-cell-group",j="layui-table-col-special",S="layui-table-tool-panel",F="LAY_TABLE_MOVE_DICT",e=function(e){return['',"","{{# layui.each(d.data.cols, function(i1, item1){ }}","","{{# layui.each(item1, function(i2, item2){ }}",'{{# if(item2.fixed && item2.fixed !== "right"){ left = true; } }}','{{# if(item2.fixed === "right"){ right = true; } }}',(e=e||{}).fixed&&"right"!==e.fixed?'{{# if(item2.fixed && item2.fixed !== "right"){ }}':"right"===e.fixed?'{{# if(item2.fixed === "right"){ }}':"","{{# var isSort = !(item2.colGroup) && item2.sort; }}",'",e.fixed?"{{# }; }}":"","{{# }); }}","","{{# }); }}","","
            ','
            ','{{# if(item2.type === "checkbox"){ }}','',"{{# } else { }}",'{{-item2.title||""}}',"{{# if(isSort){ }}",'',"{{# } }}","{{# } }}","
            ","
            "].join("")},a=['',"","
            "].join(""),c=[,"{{# if(d.data.toolbar){ }}",'
            ','
            ','
            ',"
            ","{{# } }}",'
            ',"{{# if(d.data.loading){ }}",'
            ','',"
            ","{{# } }}","{{# var left, right; }}",'
            ',e(),"
            ",'
            ',a,"
            ","{{# if(left){ }}",'
            ','
            ',e({fixed:!0}),"
            ",'
            ',a,"
            ","
            ","{{# }; }}","{{# if(right){ }}",'
            ','
            ',e({fixed:"right"}),'
            ',"
            ",'
            ',a,"
            ","
            ","{{# }; }}","
            ","{{# if(d.data.totalRow){ }}",'
            ','','',"
            ","
            ","{{# } }}",'
            ','
            ',"
            ",""].join(""),z=p(window),I=p(document),i=function(e){this.index=++x.index,this.config=p.extend({},this.config,x.config,e),this.render()},d=(i.prototype.config={limit:10,loading:!0,escape:!0,cellMinWidth:60,cellMaxWidth:Number.MAX_VALUE,editTrigger:"click",defaultToolbar:["filter","exports","print"],defaultContextmenu:!0,autoSort:!0,text:{none:'
            \u6682\u65e0\u6570\u636e
            '},cols:[]},i.prototype.render=function(e){var t=this,a=t.config,i=(a.elem=p(a.elem),a.where=a.where||{},a.id="id"in a?a.id:a.elem.attr("id")||t.index);if(k.that[i]=t,(k.config[i]=a).request=p.extend({pageName:"page",limitName:"limit"},a.request),a.response=p.extend({statusName:"code",statusCode:200,msgName:"msg",dataName:"data",totalRowName:"totalRow",countName:"count"},a.response),null!==a.page&&"object"==typeof a.page&&(a.limit=a.page.limit||a.limit,a.limits=a.page.limits||a.limits,t.page=a.page.curr=a.page.curr||1,delete a.page.elem,delete a.page.jump),!a.elem[0])return t;if(a.elem.attr("lay-filter")||a.elem.attr("lay-filter",a.id),"reloadData"===e)return t.pullData(t.page,{type:"reloadData"});a.index=t.index,t.key=a.id||a.index,t.setInit(),a.height&&/^full-\d+$/.test(a.height)?(t.fullHeightGap=a.height.split("-")[1],a.height=z.height()-t.fullHeightGap):a.height&&/^#\w+\S*-\d+$/.test(a.height)&&(i=a.height.split("-"),t.parentHeightGap=i.pop(),t.parentDiv=i.join("-"),a.height=p(t.parentDiv).height()-t.parentHeightGap);var l,e=a.elem,i=e.next("."+A),n=t.elem=p("
            ");n.addClass((l=[A,A+"-"+t.index,"layui-form","layui-border-box"],a.className&&l.push(a.className),l.join(" "))).attr({"lay-filter":"LAY-TABLE-FORM-DF-"+t.index,"lay-id":a.id,style:(l=[],a.width&&l.push("width:"+a.width+"px;"),l.join(""))}).html(m(c,{open:"{{",close:"}}"}).render({data:a,index:t.index})),i[0]&&i.remove(),e.after(n),t.layTool=n.find(".layui-table-tool"),t.layBox=n.find(".layui-table-box"),t.layHeader=n.find(o),t.layMain=n.find(".layui-table-main"),t.layBody=n.find(R),t.layFixed=n.find(".layui-table-fixed"),t.layFixLeft=n.find(".layui-table-fixed-l"),t.layFixRight=n.find(".layui-table-fixed-r"),t.layTotal=n.find(".layui-table-total"),t.layPage=n.find(".layui-table-page"),t.renderToolbar(),t.renderPagebar(),t.fullSize(),t.pullData(t.page),t.events()},i.prototype.initOpts=function(e){this.config;e.checkbox&&(e.type="checkbox"),e.space&&(e.type="space"),e.type||(e.type="normal"),"normal"!==e.type&&(e.unresize=!0,e.width=e.width||{checkbox:50,radio:50,space:30,numbers:60}[e.type])},i.prototype.setInit=function(e){var l,a,d=this,r=d.config;if(r.clientWidth=r.width||(l=function(e){var t,a=(e=e||r.elem.parent()).width();try{t="none"===e.css("display")}catch(i){}return!e[0]||a&&!t?a:l(e.parent())})(),"width"===e)return r.clientWidth;r.height=r.maxHeight||r.height,r.css&&-1===r.css.indexOf(A)&&(a=r.css.split("}"),layui.each(a,function(e,t){t&&(a[e]="."+A+"-"+d.index+" "+t)}),r.css=a.join("}"));var c=function(a,e,i,l){var n,o;l?(l.key=[r.index,a,i].join("-"),l.colspan=l.colspan||0,l.rowspan=l.rowspan||0,d.initOpts(l),(n=a+(parseInt(l.rowspan)||1))
            ','
            ','
            '].join(""),a=this.layTool.find(".layui-table-tool-temp"),i=("default"===e.toolbar?a.html(t):"string"==typeof e.toolbar&&(t=p(e.toolbar).html()||"")&&a.html(m(t).render(e)),{filter:{title:"\u7b5b\u9009\u5217",layEvent:"LAYTABLE_COLS",icon:"fa-cog"},exports:{title:"\u5bfc\u51fa",layEvent:"LAYTABLE_EXPORT",icon:"fa-folder-open"},print:{title:"\u6253\u5370",layEvent:"LAYTABLE_PRINT",icon:"fa-print"},search:{title:"\u641c\u7d22",layEvent:"LAYTABLE_SEARCH",icon:"fa-search"}}),l=[];"object"==typeof e.defaultToolbar&&layui.each(e.defaultToolbar,function(e,t){t="string"==typeof t?i[t]:t;t&&l.push('
            ')}),this.layTool.find(".layui-table-tool-self").html(l.join(""))},i.prototype.renderPagebar=function(){var e,t=this.config,a=this.layPagebar=p('
            ');t.pagebar&&((e=p(t.pagebar).html()||"")&&a.append(m(e).render(t)),this.layPage.append(a))},i.prototype.setParentCol=function(e,t){var a=this.config,i=this.layHeader.find('th[data-key="'+t+'"]'),l=parseInt(i.attr("colspan"))||0;i[0]&&(t=t.split("-"),t=a.cols[t[1]][t[2]],e?l--:l++,i.attr("colspan",l),i[l?"removeClass":"addClass"](N),t.colspan2=l,t.hide=l<1,a=i.data("parentkey"))&&this.setParentCol(e,a)},i.prototype.setColsPatch=function(){var a=this,e=a.config;layui.each(e.cols,function(e,t){layui.each(t,function(e,t){t.hide&&a.setParentCol(t.hide,t.parentKey)})})},i.prototype.setGroupWidth=function(i){var e,l=this;l.config.cols.length<=1||((e=l.layHeader.find((i?"th[data-key="+i.data("parentkey")+"]>":"")+"."+M)).css("width",0),layui.each(e.get().reverse(),function(){var e=p(this),t=e.parent().data("key"),a=0;l.layHeader.eq(0).find("th[data-parentkey="+t+"]").width(function(e,t){p(this).hasClass(N)||0 tr:first-child > th:last-child")).data("field")&&e.prev()[0]?t(e.prev()):e})()).data("key"),n.getCssRule(e,function(e){var t=e.style.width||a.outerWidth();e.style.width=parseFloat(t)+l+"px",0'+(e||"Error")+"
            ");a[0]&&(t.layNone.remove(),a.remove()),t.layFixed.addClass(N),t.layMain.find("tbody").html(""),t.layMain.append(t.layNone=e),t.layTotal.addClass(h),t.layPage.find(D).addClass(h),x.cache[t.key]=[],t.syncCheckAll(),t.renderForm(),t.setColsWidth()},i.prototype.page=1,i.prototype.pullData=function(a,t){var e,i,l=this,n=l.config,o=(n.HAS_SET_COLS_PATCH||l.setColsPatch(),n.HAS_SET_COLS_PATCH=!0,n.request),d=n.response,r=function(){"object"==typeof n.initSort&&l.sort({field:n.initSort.field,type:n.initSort.type,reloadType:t.type})},c=function(e,t){l.setColsWidth(),"function"==typeof n.done&&n.done(e,a,e[d.countName],t)};t=t||{},"function"==typeof n.before&&n.before(n),l.startTime=(new Date).getTime(),t.renderData?((e={})[d.dataName]=x.cache[l.key],e[d.countName]=n.url?"object"===layui.type(n.page)?n.page.count:e[d.dataName].length:n.data.length,"object"==typeof n.totalRow&&(e[d.totalRowName]=p.extend({},l.totalRow)),l.renderData({res:e,curr:a,count:e[d.countName],type:t.type}),r(),c(e,"renderData")):n.url?(i={},n.page&&(i[o.pageName]=a,i[o.limitName]=n.limit),o=p.extend(i,n.where),n.contentType&&0==n.contentType.indexOf("application/json")&&(o=JSON.stringify(o)),l.loading(),p.ajax({type:n.method||"get",url:n.url,contentType:n.contentType,data:o,dataType:n.dataType||"json",jsonpCallback:n.jsonpCallback,headers:n.headers||{},success:function(e){(e="function"==typeof n.parseData?n.parseData(e)||e:e)[d.statusName]!=d.statusCode?l.errorView(e[d.msgName]||'\u8fd4\u56de\u7684\u6570\u636e\u4e0d\u7b26\u5408\u89c4\u8303\uff0c\u6b63\u786e\u7684\u6210\u529f\u72b6\u6001\u7801\u5e94\u4e3a\uff1a"'+d.statusName+'": '+d.statusCode):(l.totalRow=e[d.totalRowName],l.renderData({res:e,curr:a,count:e[d.countName],type:t.type}),r(),n.time=(new Date).getTime()-l.startTime+" ms"),c(e)},error:function(e,t){l.errorView("\u8bf7\u6c42\u5f02\u5e38\uff0c\u9519\u8bef\u63d0\u793a\uff1a"+t),"function"==typeof n.error&&n.error(e,t)}})):"array"===layui.type(n.data)&&(e={},i=a*n.limit-n.limit,o=n.data.concat(),e[d.dataName]=n.page?o.splice(i,n.limit):o,e[d.countName]=n.data.length,"object"==typeof n.totalRow&&(e[d.totalRowName]=p.extend({},n.totalRow)),l.totalRow=e[d.totalRowName],l.renderData({res:e,curr:a,count:e[d.countName],type:t.type}),r(),c(e))},i.prototype.eachCols=function(e){return x.eachCols(null,e,this.config.cols),this},i.prototype.col=function(e){try{return e=e.split("-"),this.config.cols[e[1]][e[2]]||{}}catch(t){return y.error(t),{}}},i.prototype.getTrHtml=function(a,l,n,e){var s=this,u=s.config,y=e&&e.trs||[],h=e&&e.trs_fixed||[],f=e&&e.trs_fixed_r||[];return n=n||1,layui.each(a,function(e,o){var i=[],d=[],r=[],c=e+u.limit*(n-1)+1;if("object"!=typeof o){a[e]=o={LAY_KEY:o};try{x.cache[s.key][e]=o}catch(t){}}"array"===layui.type(o)&&0===o.length||(o[x.config.numbersName]=c,l||(o[x.config.indexName]=e),s.eachCols(function(e,l){var t,e=l.field||e,a=l.key,n=o[e];n!==undefined&&null!==n||(n=""),l.colGroup||(t=['','
            "+function(){var e,t=p.extend(!0,{LAY_COL:l},o),a=x.config.checkName,i=x.config.disabledName;switch(l.type){case"checkbox":return'';case"radio":return'';case"numbers":return c}return l.toolbar?m(p(l.toolbar).html()||"").render(t):w.call(s,{item3:l,content:n,tplData:t})}(),"
            "].join(""),i.push(t),l.fixed&&"right"!==l.fixed&&d.push(t),"right"===l.fixed&&r.push(t))}),e=['data-index="'+e+'"'],o[x.config.checkName]&&e.push('class="'+E+'"'),e=e.join(" "),y.push(""+i.join("")+""),h.push(""+d.join("")+""),f.push(""+r.join("")+""))}),{trs:y,trs_fixed:h,trs_fixed_r:f}},x.getTrHtml=function(e,t){e=C(e);return e.getTrHtml(t,null,e.page)},i.prototype.renderData=function(e){var a=this,i=a.config,t=e.res,l=e.curr,n=a.count=e.count,o=e.sort,d=t[i.response.dataName]||[],t=t[i.response.totalRowName],r=[],c=[],s=[],u=function(){if(!o&&a.sortKey)return a.sort({field:a.sortKey.field,type:a.sortKey.sort,pull:!0,reloadType:e.type});a.getTrHtml(d,o,l,{trs:r,trs_fixed:c,trs_fixed_r:s}),"fixed"===i.scrollPos&&"reloadData"===e.type||a.layBody.scrollTop(0),"reset"===i.scrollPos&&a.layBody.scrollLeft(0),a.layMain.find("."+L).remove(),a.layMain.find("tbody").html(r.join("")),a.layFixLeft.find("tbody").html(c.join("")),a.layFixRight.find("tbody").html(s.join("")),a.syncCheckAll(),a.renderForm(),a.fullSize(),a.haveInit?a.scrollPatch():setTimeout(function(){a.scrollPatch()},50),a.haveInit=!0,f.close(a.tipsIndex)};return x.cache[a.key]=d,a.layTotal[0==d.length?"addClass":"removeClass"](h),a.layPage[i.page||i.pagebar?"removeClass":"addClass"](N),a.layPage.find(D)[!i.page||0==n||0===d.length&&1==l?"addClass":"removeClass"](h),0===d.length?a.errorView(i.text.none):(a.layFixLeft.removeClass(N),o?u():(u(),a.renderTotal(d,t),a.layTotal&&a.layTotal.removeClass(N),void(i.page&&(i.page=p.extend({elem:"layui-table-page"+i.index,count:n,limit:i.limit,limits:i.limits||[10,20,30,40,50,60,70,80,90],groups:3,layout:["prev","page","next","skip","count","limit"],prev:'',next:'',jump:function(e,t){t||(a.page=e.curr,i.limit=e.limit,a.pullData(e.curr))}},i.page),i.page.count=n,O.render(i.page)))))},x.renderData=function(e){e=C(e);e&&e.pullData(e.page,{renderData:!0,type:"reloadData"})},i.prototype.renderTotal=function(e,o){var d,r=this,c=r.config,s={};c.totalRow&&(layui.each(e,function(e,i){"array"===layui.type(i)&&0===i.length||r.eachCols(function(e,t){var e=t.field||e,a=i[e];t.totalRow&&(s[e]=(s[e]||0)+(parseFloat(a)||0))})}),r.dataTotal=[],d=[],r.eachCols(function(e,t){var a,e=t.field||e,i=o&&o[t.field],l="totalRowDecimals"in t?t.totalRowDecimals:2,l=s[e]?parseFloat(s[e]||0).toFixed(l):"",l=(a=t.totalRowText||"",(n={LAY_COL:t})[e]=l,n=t.totalRow&&w.call(r,{item3:t,content:l,tplData:n})||a,i||n),n=(t.field&&r.dataTotal.push({field:t.field,total:p("
            "+l+"
            ").text()}),['','
            "+("string"==typeof(a=t.totalRow||c.totalRow)?m(a).render(p.extend({TOTAL_NUMS:i||s[e],TOTAL_ROW:o||{},LAY_COL:t},t)):l),"
            "].join(""));d.push(n)}),e=r.layTotal.find(".layui-table-patch"),r.layTotal.find("tbody").html(""+d.join("")+(e.length?e.get(0).outerHTML:"")+""))},i.prototype.getColElem=function(e,t){this.config;return e.eq(0).find(".laytable-cell-"+t+":eq(0)")},i.prototype.renderForm=function(e){this.config;var t=this.elem.attr("lay-filter");v.render(e,t)},i.prototype.syncCheckAll=function(){var a,e=this,i=e.config,t=e.layHeader.find('input[name="layTableCheckbox"]'),l=x.checkStatus(e.key);t[0]&&(a=l.isAll,e.eachCols(function(e,t){"checkbox"===t.type&&(t[i.checkName]=a)}),t.prop({checked:l.isAll,indeterminate:!l.isAll&&l.data.length}),v.render(t))},i.prototype.setRowActive=function(e,t){this.config;this.layBody.find('tr[data-index="'+e+'"]').addClass(t=t||"layui-table-click").siblings("tr").removeClass(t)},i.prototype.setRowChecked=function(a){var e=this,i=e.config,l=e.layBody.find("tr"+("all"===a.index?"":'[data-index="'+a.index+'"]')),t=(a=p.extend({type:"checkbox"},a),x.cache[e.key]),n="checked"in a,o=function(e){return"radio"===a.type||(n?a.checked:!e)},t=(layui.each(t,function(e,t){"array"!==layui.type(t)&&(Number(a.index)===e||"all"===a.index?(e=t[i.checkName]=o(t[i.checkName]),l[e?"addClass":"removeClass"](E),"radio"===a.type&&l.siblings().removeClass(E)):"radio"===a.type&&delete t[i.checkName])}),l.find('input[lay-type="'+({radio:"layTableRadio",checkbox:"layTableCheckbox"}[a.type]||"checkbox")+'"]'));t.prop("checked",o(t.last().prop("checked"))),e.syncCheckAll(),e.renderForm(a.type)},i.prototype.sort=function(l){var e,t=this,a={},i=t.config,n=i.elem.attr("lay-filter"),o=x.cache[t.key];"string"==typeof(l=l||{}).field&&(d=l.field,t.layHeader.find("th").each(function(e,t){var a=p(this),i=a.data("field");if(i===l.field)return l.field=a,d=i,!1}));try{var d=d||l.field.data("field"),r=l.field.data("key");if(t.sortKey&&!l.pull&&d===t.sortKey.field&&l.type===t.sortKey.sort)return;var c=t.layHeader.find("th .laytable-cell-"+r).find(_);t.layHeader.find("th").find(_).removeAttr("lay-sort"),c.attr("lay-sort",l.type||null),t.layFixed.find("th")}catch(s){y.error("Table modules: sort field '"+d+"' not matched")}t.sortKey={field:d,sort:l.type},i.autoSort&&("asc"===l.type?e=layui.sort(o,d,null,!0):"desc"===l.type?e=layui.sort(o,d,!0,!0):(e=layui.sort(o,x.config.indexName,null,!0),delete t.sortKey,delete i.initSort)),a[i.response.dataName]=e||o,t.renderData({res:a,curr:t.page,count:t.count,sort:!0,type:l.reloadType}),l.fromEvent&&(i.initSort={field:d,type:l.type},layui.event.call(l.field,T,"sort("+n+")",p.extend({config:i},i.initSort)))},i.prototype.loading=function(e){var t=this;t.config.loading&&(e?(t.layInit&&t.layInit.remove(),delete t.layInit,t.layBox.find(".layui-table-init").remove()):(t.layInit=p(['
            ','',"
            "].join("")),t.layBox.append(t.layInit)))},i.prototype.getCssRule=function(a,i){var e=this.elem.find("style")[0],e=e.sheet||e.styleSheet||{},e=e.cssRules||e.rules;layui.each(e,function(e,t){if(t.selectorText===".laytable-cell-"+a)return i(t),!0})},i.prototype.fullSize=function(){var e,a,i=this,t=i.config,l=t.height;i.fullHeightGap?(l=z.height()-i.fullHeightGap)<135&&(l=135):i.parentDiv&&i.parentHeightGap&&(l=p(i.parentDiv).height()-i.parentHeightGap)<135&&(l=135),1
            ')).find("div").css({width:a}),e.find("tr").append(t)):e.find(".layui-table-patch").remove()};n(e.layHeader),n(e.layTotal);n=e.layMain.height()-i;e.layFixed.find(R).css("height",t.height()>=n?n:"auto"),e.layFixRight[x.cache[e.key]&&x.cache[e.key].length&&0');a.html(t),u.height&&a.css("max-height",u.height-(s.layTool.outerHeight()||50)),i.find("."+S)[0]||i.append(a),s.renderForm(),a.on("click",function(e){layui.stope(e)}),e.done&&e.done(a,t)};switch(layui.stope(e),I.trigger("table.tool.panel.remove"),f.close(s.tipsIndex),t){case"LAYTABLE_COLS":l({list:(a=[],s.eachCols(function(e,t){t.field&&"normal"==t.type&&a.push('
          • "+(t.fieldTitle||t.title||t.field)+"
          • ").text())+'" lay-filter="LAY_TABLE_TOOL_COLS">')}),a.join("")),done:function(){v.on("checkbox(LAY_TABLE_TOOL_COLS)",function(e){var e=p(e.elem),t=this.checked,a=e.data("key"),i=s.col(a),l=i.hide,e=e.data("parentkey");i.key&&(i.hide=!t,s.elem.find('*[data-key="'+a+'"]')[t?"removeClass":"addClass"](N),l!=i.hide&&s.setParentCol(!t,e),s.resize(),layui.event.call(this,T,"colToggled("+r+")",{col:i,config:u}))})}});break;case"LAYTABLE_EXPORT":b.ie?f.tips("\u5bfc\u51fa\u529f\u80fd\u4e0d\u652f\u6301 IE\uff0c\u8bf7\u7528 Chrome \u7b49\u9ad8\u7ea7\u6d4f\u89c8\u5668\u5bfc\u51fa",this,{tips:3}):l({list:['
          • \u5bfc\u51fa csv \u683c\u5f0f\u6587\u4ef6
          • ','
          • \u5bfc\u51fa xls \u683c\u5f0f\u6587\u4ef6
          • '].join(""),done:function(e,t){t.on("click",function(){var e=p(this).data("type");x.exportFile.call(s,u.id,null,e)})}});break;case"LAYTABLE_PRINT":var n=window.open("about:blank","_blank"),o=[""].join(""),d=p(s.layHeader.html());d.append(s.layMain.find("table").html()),d.append(s.layTotal.find("table").html()),d.find("th.layui-table-patch").remove(),d.find("thead>tr>th."+j).filter(function(e,t){return!p(t).children("."+M).length}).remove(),d.find("tbody>tr>td."+j).remove(),n.document.write(o+d.prop("outerHTML")),n.document.close(),layui.device("edg").edg?(n.onafterprint=n.close,n.print()):(n.print(),n.close());break;case"LAYTABLE_SEARCH":o=p("#laytable-search");o.is(":hidden")?o.fadeIn(500):o.fadeOut(500)}layui.event.call(this,T,"toolbar("+r+")",p.extend({event:t,config:u},{}))}),s.layPagebar.on("click","*[lay-event]",function(e){var t=p(this).attr("lay-event");layui.event.call(this,T,"pagebar("+r+")",p.extend({event:t,config:u},{}))}),e.on("mousemove",function(e){var t=p(this),a=t.offset().left,e=e.clientX-a;t.data("unresize")||k.eventMoveElem||(d.allowResize=t.width()-e<=10,o.css("cursor",d.allowResize?"col-resize":""))}).on("mouseleave",function(){p(this);k.eventMoveElem||o.css("cursor","")}).on("mousedown",function(e){var t,a=p(this);d.allowResize&&(t=a.data("key"),e.preventDefault(),d.offset=[e.clientX,e.clientY],s.getCssRule(t,function(e){var t=e.style.width||a.outerWidth();d.rule=e,d.ruleWidth=parseFloat(t),d.minWidth=a.data("minwidth")||u.cellMinWidth,d.maxWidth=a.data("maxwidth")||u.cellMaxWidth}),a.data(F,d),k.eventMoveElem=a)}),k.docEvent||I.on("mousemove",function(e){var t,a;k.eventMoveElem&&(t=k.eventMoveElem.data(F)||{},k.eventMoveElem.data("resizing",1),e.preventDefault(),t.rule)&&(e=t.ruleWidth+e.clientX-t.offset[0],a=k.eventMoveElem.closest("."+A).attr("lay-id"),a=C(a))&&((e=et.maxWidth&&(e=t.maxWidth),t.rule.style.width=e+"px",a.setGroupWidth(k.eventMoveElem),f.close(s.tipsIndex))}).on("mouseup",function(e){var t,a,i,l,n;k.eventMoveElem&&(i=(t=k.eventMoveElem).closest("."+A).attr("lay-id"),a=C(i))&&(i=t.data("key"),l=a.col(i),n=a.config.elem.attr("lay-filter"),d={},o.css("cursor",""),a.scrollPatch(),t.removeData(F),delete k.eventMoveElem,a.getCssRule(i,function(e){l.width=parseFloat(e.style.width),layui.event.call(t[0],T,"colResized("+n+")",{col:l,config:a.config})}))}),k.docEvent=!0,e.on("click",function(e){var t=p(this),a=t.find(_),i=a.attr("lay-sort");if(!a[0]||1===t.data("resizing"))return t.removeData("resizing");s.sort({field:t,type:"asc"===i?"desc":"desc"===i?null:"asc",fromEvent:!0})}).find(_+" .layui-edge ").on("click",function(e){var t=p(this),a=t.index(),t=t.parents("th").eq(0).data("field");layui.stope(e),0===a?s.sort({field:t,type:"asc",fromEvent:!0}):s.sort({field:t,type:"desc",fromEvent:!0})}),s.commonMember=function(e){var t=p(this).parents("tr").eq(0).data("index"),r=s.layBody.find('tr[data-index="'+t+'"]'),c=(c=x.cache[s.key]||[])[t]||{},a={tr:r,config:u,data:x.clearCacheKey(c),index:t,del:function(){x.cache[s.key][t]=[],r.remove(),s.scrollPatch()},update:function(e,d){e=e||{},layui.each(e,function(i,l){var n=r.children('td[data-field="'+i+'"]'),o=n.children(y);c[i]=a.data[i]=l,s.eachCols(function(e,t){var a;t.field==i?(o.html(w.call(s,{item3:t,content:l,tplData:p.extend({LAY_COL:t},c)})),n.data("content",l)):d&&(t.templet||t.toolbar)&&(e=r.children('td[data-field="'+(t.field||e)+'"]'),a=c[t.field],e.children(y).html(w.call(s,{item3:t,content:a,tplData:p.extend({LAY_COL:t},c)})),e.data("content",a))})}),s.renderForm()},setRowChecked:function(e){s.setRowChecked(p.extend({index:t},e))}};return p.extend(a,e)}),a=(s.elem.on("click",'input[name="layTableCheckbox"]+',function(e){var t=p(this),a=t.closest("td"),t=t.prev(),i=(s.layBody.find('input[name="layTableCheckbox"]'),t.parents("tr").eq(0).data("index")),l=t[0].checked,n="layTableAllChoose"===t.attr("lay-filter");t[0].disabled||(n?s.setRowChecked({index:"all",checked:l}):(s.setRowChecked({index:i,checked:l}),layui.stope(e)),layui.event.call(t[0],T,"checkbox("+r+")",c.call(t[0],{checked:l,type:n?"all":"one",getCol:function(){return s.col(a.data("key"))}})))}),s.elem.on("click",'input[lay-type="layTableRadio"]+',function(e){var t=p(this),a=t.closest("td"),t=t.prev(),i=t[0].checked,l=t.parents("tr").eq(0).data("index");if(layui.stope(e),t[0].disabled)return!1;s.setRowChecked({type:"radio",index:l}),layui.event.call(t[0],T,"radio("+r+")",c.call(t[0],{checked:i,getCol:function(){return s.col(a.data("key"))}}))}),s.layBody.on("mouseenter","tr",function(){var e=p(this),t=e.index();e.data("off")||s.layBody.find("tr:eq("+t+")").addClass(W)}).on("mouseleave","tr",function(){var e=p(this),t=e.index();e.data("off")||s.layBody.find("tr:eq("+t+")").removeClass(W)}).on("click","tr",function(e){var t=".layui-form-checkbox,.layui-form-switch,.layui-form-radio,[lay-unrow]";p(e.target).is(t)||p(e.target).closest(t)[0]||a.call(this,"row")}).on("dblclick","tr",function(){a.call(this,"rowDouble")}).on("contextmenu","tr",function(e){u.defaultContextmenu||e.preventDefault(),a.call(this,"rowContextmenu")}),function(e){var t=p(this);t.data("off")||layui.event.call(this,T,e+"("+r+")",c.call(t.children("td")[0]))}),n=function(e,t){var a,i,l,n;(e=p(e)).data("off")||(a=e.data("field"),n=e.data("key"),n=s.col(n),i=e.closest("tr").data("index"),i=x.cache[s.key][i],l=e.children(y),(n="function"==typeof n.edit?n.edit(i):n.edit)&&((n=p("textarea"===n?'':''))[0].value=e.data("content")||i[a]||l.text(),e.find("."+H)[0]||e.append(n),n.focus(),t)&&layui.stope(t))},i=(s.layBody.on("change","."+H,function(){var e=p(this),t=e.parent(),a=this.value,i=e.parent().data("field"),e=e.closest("tr").data("index"),e=x.cache[s.key][e],l=c.call(t[0],{value:a,field:i,oldValue:e[i],td:t,reedit:function(){setTimeout(function(){n(l.td);var e={};e[i]=l.oldValue,l.update(e)})},getCol:function(){return s.col(t.data("key"))}}),e={};e[i]=a,l.update(e),layui.event.call(t[0],T,"edit("+r+")",l)}).on("blur","."+H,function(){p(this).remove()}),s.layBody.on(u.editTrigger,"td",function(e){n(this,e)}).on("mouseenter","td",function(){t.call(this)}).on("mouseleave","td",function(){t.call(this,"hide")}),s.layTotal.on("mouseenter","td",function(){t.call(this)}).on("mouseleave","td",function(){t.call(this,"hide")}),"layui-table-grid-down"),t=function(e){var t=p(this),a=t.children(y);t.data("off")||(e?t.find(".layui-table-grid-down").remove():!(a.prop("scrollWidth")>a.outerWidth()||0
            '))},l=function(e){var t=p(this).parent().children(y);s.tipsIndex=f.tips(['
            ',t.html(),"
            ",''].join(""),t[0],{tips:[3,""],time:-1,anim:-1,maxWidth:b.ios||b.android?300:s.elem.width()/2,isOutAnim:!1,skin:"layui-table-tips",success:function(e,t){e.find(".layui-table-tips-c").on("click",function(){f.close(t)})}}),layui.stope(e)},h=(s.layBody.on("click","."+i,function(e){l.call(this,e)}),s.layTotal.on("click","."+i,function(e){l.call(this,e)}),function(e){var t=p(this),a=t.closest("td"),i=t.parents("tr").eq(0).data("index");s.setRowActive(i),layui.event.call(this,T,(e||"tool")+"("+r+")",c.call(this,{event:t.attr("lay-event"),getCol:function(){return s.col(a.data("key"))}}))});s.layBody.on("click","*[lay-event]",function(e){h.call(this),layui.stope(e)}).on("dblclick","*[lay-event]",function(e){h.call(this,"toolDouble"),layui.stope(e)}),s.layMain.on("scroll",function(){var e=p(this),t=e.scrollLeft(),e=e.scrollTop();s.layHeader.scrollLeft(t),s.layTotal.scrollLeft(t),s.layFixed.find(R).scrollTop(e),f.close(s.tipsIndex)}),z.on("resize",function(){s.resize()})},I.on("click",function(){I.trigger("table.remove.tool.panel")}),I.on("table.remove.tool.panel",function(){p("."+S).remove()}),x.init=function(i,o){o=o||{};var e="object"==typeof i?i:p("string"==typeof i?'table[lay-filter="'+i+'"]':t+"[lay-data], "+t+"[lay-options]"),d="Table element property lay-data configuration item has a syntax error: ";return e.each(function(){var l,e=p(this),t=e.attr("lay-data"),t=r.options(this,{attr:t?"lay-data":null,errorText:d+(t||e.attr("lay-options"))}),n=p.extend({elem:this,cols:[],data:[],skin:e.attr("lay-skin"),size:e.attr("lay-size"),even:"string"==typeof e.attr("lay-even")},x.config,o,t),a=(i&&e.hide(),e.find("thead>tr").each(function(i){n.cols[i]=[],p(this).children().each(function(e){var t=p(this),a=t.attr("lay-data"),a=r.options(this,{attr:a?"lay-data":null,errorText:d+(a||t.attr("lay-options"))}),t=p.extend({title:t.text(),colspan:parseInt(t.attr("colspan"))||0,rowspan:parseInt(t.attr("rowspan"))||0},a);n.cols[i].push(t)})}),e.find("tbody>tr")),t=x.render(n);!a.length||o.data||t.config.url||(l=0,x.eachCols(t.config.id,function(e,i){a.each(function(e){n.data[e]=n.data[e]||{};var t=p(this),a=i.field;n.data[e][a]=t.children("td").eq(l).html()}),l++}),t.reloadData({data:n.data}))}),this},k.that={},k.config={},function(a,i,e,l){var n,o;l.colGroup&&(n=0,a++,l.CHILD_COLS=[],o=e+(parseInt(l.rowspan)||1),layui.each(i[o],function(e,t){t.parentKey?t.parentKey===l.key&&(t.PARENT_COL_INDEX=a,l.CHILD_COLS.push(t),d(a,i,o,t)):t.PARENT_COL_INDEX||1<=n&&n==(l.colspan||1)||(t.PARENT_COL_INDEX=a,l.CHILD_COLS.push(t),n+=parseInt(1td').filter('[data-field="'+e+'"]')}}})).replace(/"/g,'""'),n.push(a='"'+a+'"')))}),d.push(n.join(","))}),c&&layui.each(c.dataTotal,function(e,t){r[t.field]||i.push(t.total)}),o.join(",")+"\r\n"+d.join("\r\n")+"\r\n"+i.join(","))),u.download=(a.title||n.title||"table_"+(n.index||""))+"."+l,document.body.appendChild(u),u.click(),document.body.removeChild(u)},x.getOptions=l,x.hideCol=function(e,l){var n=C(e);n&&("boolean"===layui.type(l)?n.eachCols(function(e,t){var a=t.key,i=n.col(a),t=t.parentKey;i.hide!=l&&(i=i.hide=l,n.elem.find('*[data-key="'+a+'"]')[i?"addClass":"removeClass"](N),n.setParentCol(i,t))}):(l=layui.isArray(l)?l:[l],layui.each(l,function(e,l){n.eachCols(function(e,t){var a,i;l.field===t.field&&(a=t.key,i=n.col(a),t=t.parentKey,"hide"in l)&&i.hide!=l.hide&&(i=i.hide=!!l.hide,n.elem.find('*[data-key="'+a+'"]')[i?"addClass":"removeClass"](N),n.setParentCol(i,t))})})),p("."+S).remove(),n.resize())},x.reload=function(e,t,a,i){if(l(e))return(e=C(e)).reload(t,a,i),k.call(e)},x.reloadData=function(){var a=p.extend([],arguments),i=(a[3]="reloadData",new RegExp("^("+["elem","id","cols","width","height","maxHeight","toolbar","defaultToolbar","className","css","totalRow","pagebar"].join("|")+")$"));return layui.each(a[1],function(e,t){i.test(e)&&delete a[1][e]}),x.reload.apply(null,a)},x.render=function(e){e=new i(e);return k.call(e)},x.clearCacheKey=function(e){return delete(e=p.extend({},e))[x.config.checkName],delete e[x.config.indexName],delete e[x.config.numbersName],delete e[x.config.disabledName],e},p(function(){x.init()}),n(T,x)});layui.define(["table"],function(e){"use strict";var E=layui.$,x=layui.form,B=layui.table,y=layui.hint(),j={config:{},on:B.on,eachCols:B.eachCols,index:B.index,set:function(e){var t=this;return t.config=E.extend({},t.config,e),t},resize:B.resize,getOptions:B.getOptions,hideCol:B.hideCol,renderData:B.renderData},i=function(){var a=this,e=a.config,n=e.id||e.index;return{config:e,reload:function(e,t){a.reload.call(a,e,t)},reloadData:function(e,t){j.reloadData(n,e,t)}}},P=function(e){var t=i.that[e];return t||y.error(e?"The treeTable instance with ID '"+e+"' not found":"ID argument required"),t||null},F="layui-hide",q=".layui-table-main",L=".layui-table-fixed-l",Y=".layui-table-fixed-r",h="layui-table-tree",R="LAY_DATA_INDEX",m="LAY_DATA_INDEX_HISTORY",f="LAY_PARENT_INDEX",b="LAY_CHECKBOX_HALF",H="LAY_EXPAND",X="LAY_HAS_EXPANDED",z="LAY_ASYNC_STATUS",t=function(e){var t=this;t.index=++j.index,t.config=E.extend(!0,{},t.config,j.config,e),t.init(),t.render()},u=function(n,i,e){var l=B.cache[n];layui.each(e||l,function(e,t){var a=t[R];-1!==a.indexOf("-")&&(l[a]=t),t[i]&&u(n,i,t[i])})},l=function(i,a,e){var l=P(i),t=("reloadData"!==e&&(l.status={expand:{}}),E.extend(!0,{},l.getOptions(),a)),n=t.tree,r=n.customName.children,d=n.customName.id,o=(delete a.hasNumberCol,delete a.hasChecboxCol,delete a.hasRadioCol,B.eachCols(null,function(e,t){"numbers"===t.type?a.hasNumberCol=!0:"checkbox"===t.type?a.hasChecboxCol=!0:"radio"===t.type&&(a.hasRadioCol=!0)},t.cols),a.parseData),c=a.done;t.url?e&&(!o||o.mod)||(a.parseData=function(){var e=this,t=arguments,a=t[0],t=("function"===layui.type(o)&&(a=o.apply(e,t)||t[0]),e.response.dataName);return n.data.isSimpleData&&!n["async"].enable&&(a[t]=l.flatToTree(a[t])),s(a[t],function(e){e[H]=H in e?e[H]:e[d]!==undefined&&l.status.expand[e[d]]},r),e.autoSort&&e.initSort&&e.initSort.type&&layui.sort(a[t],e.initSort.field,"desc"===e.initSort.type,!0),l.initData(a[t]),a},a.parseData.mod=!0):(a.data=a.data||[],n.data.isSimpleData&&(a.data=l.flatToTree(a.data)),l.initData(a.data)),e&&(!c||c.mod)||(a.done=function(){var e,t=arguments,a=(t[3]||delete l.isExpandAll,this.elem.next()),n=(l.updateStatus(null,{LAY_HAS_EXPANDED:!1}),u(i,r),a.find('[name="layTableCheckbox"][lay-filter="layTableAllChoose"]'));if(n.length&&(e=j.checkStatus(i),n.prop({checked:e.isAll&&e.data.length,indeterminate:!e.isAll&&e.data.length})),l.renderTreeTable(a),"function"===layui.type(c))return c.apply(this,t)},a.done.mod=!0)};t.prototype.init=function(){var e=this.config,t=B.render(E.extend({},e,{data:[],url:"",done:null})),a=t.config.id;(i.that[a]=this).tableIns=t,l(a,e)},t.prototype.config={tree:{customName:{children:"children",isParent:"isParent",name:"name",id:"id",pid:"parentId",icon:"icon"},view:{indent:14,flexIconClose:'',flexIconOpen:'',showIcon:!0,icon:"",iconClose:'',iconOpen:'',iconLeaf:'',showFlexIconIfNotParent:!1,dblClickExpand:!0,expandAllDefault:!1},data:{isSimpleData:!1,rootPid:null},"async":{enable:!1,url:"",type:null,contentType:null,headers:null,where:null,autoParam:[]},callback:{beforeExpand:null,onExpand:null}}},t.prototype.getOptions=function(){return this.tableIns?B.getOptions(this.tableIns.config.id):this.config},t.prototype.flatToTree=function(e){var a,n,i,t,l,r,d,o=this.getOptions(),c=o.tree,u=c.customName,o=o.id;return e=e||B.cache[o],o=e,a=u.id,n=u.pid,i=u.children,t=c.data.rootPid,a=a||"id",n=n||"parentId",i=i||"children",d={},layui.each(o,function(e,t){l=a+t[a],d[l]=E.extend({},t),d[l][i]=[]}),layui.each(d,function(e,t){(r=a+t[n])&&d[r]&&d[r][i].push(t)}),Object.values(d).filter(function(e){return t?e[n]===t:!e[n]})},t.prototype.treeToFlat=function(e,n,i){var l=this,r=l.getOptions().tree.customName,d=r.children,o=r.pid,c=[];return layui.each(e,function(e,t){var e=(i?i+"-":"")+e,a=E.extend({},t);a[d]=null,a[o]=t[o]||n,c.push(a),c=c.concat(l.treeToFlat(t[d],t[r.id],e))}),c},t.prototype.getTreeNode=function(e){var t,a,n=this;return e?(a=(t=n.getOptions()).tree,t.id,a.customName,{data:e,dataIndex:e[R],getParentNode:function(){return n.getNodeByIndex(e[f])}}):y.error("\u627e\u4e0d\u5230\u8282\u70b9\u6570\u636e")},t.prototype.getNodeByIndex=function(t){var a,e,n=this,i=n.getNodeDataByIndex(t);return i?((e=n.getOptions()).tree.customName.parent,a=e.id,(e={data:i,dataIndex:i[R],getParentNode:function(){return n.getNodeByIndex(i[f])},update:function(e){return j.updateNode(a,t,e)},remove:function(){return j.removeNode(a,t)},expand:function(e){return j.expandNode(a,E.extend({},e,{index:t}))},setChecked:function(e){return j.setRowChecked(a,E.extend({},e,{index:t}))}}).dataIndex=t,e):y.error("\u627e\u4e0d\u5230\u8282\u70b9\u6570\u636e")},t.prototype.getNodeById=function(a){var e=this.getOptions(),n=e.tree.customName.id,i="",e=j.getData(e.id,!0);if(layui.each(e,function(e,t){if(t[n]===a)return i=t[R],!0}),i)return this.getNodeByIndex(i)},t.prototype.getNodeDataByIndex=function(a,e,t){var n=this.getOptions(),i=n.tree,l=n.id,r=B.cache[l][a];if("delete"!==t&&r)return E.extend(r,t),e?E.extend({},r):r;for(var r=this.getTableData(),d=(a+="").split("-"),o=r,c=n.url||1
            '),N=function(e){y[z]="success",y[f.children]=e,c.initData(y[f.children],y[R]),U(t,!0,!p&&n,i,l)},C=m.format,"function"===layui.type(C)?C(y,o,N):(I=E.extend({},m.where||o.where),C=m.autoParam,layui.each(C,function(e,t){t=t.split("=");I[t[0].trim()]=y[(t[1]||t[0]).trim()]}),(C=m.contentType||o.contentType)&&0==C.indexOf("application/json")&&(I=JSON.stringify(I)),w=m.method||o.method,D=m.dataType||o.dataType,T=m.jsonpCallback||o.jsonpCallback,_=m.headers||o.headers,k=m.parseData||o.parseData,O=m.response||o.response,E.ajax({type:w||"get",url:b,contentType:C,data:I,dataType:D||"json",jsonpCallback:T,headers:_||{},success:function(e){(e="function"==typeof k?k.call(o,e)||e:e)[O.statusName]!=O.statusCode?(y[z]="error",g.html('')):N(e[O.dataName])},error:function(e,t){y[z]="error","function"==typeof o.error&&o.error(e,t)}})),h;y[X]=!0,v.length&&(!o.initSort||o.url&&!o.autoSort||((m=o.initSort).type?layui.sort(v,m.field,"desc"===m.type,!0):layui.sort(v,B.config.indexName,null,!0)),c.initData(y[f.children],y[R]),w=B.getTrHtml(d,v,null,null,e),S={trs:E(w.trs.join("")),trs_fixed:E(w.trs_fixed.join("")),trs_fixed_r:E(w.trs_fixed_r.join(""))},A=(e.split("-").length-1||0)+1,layui.each(v,function(e,t){S.trs.eq(e).attr({"data-index":t[R],"lay-data-index":t[R],"data-level":A}),S.trs_fixed.eq(e).attr({"data-index":t[R],"lay-data-index":t[R],"data-level":A}),S.trs_fixed_r.eq(e).attr({"data-index":t[R],"lay-data-index":t[R],"data-level":A})}),r.find(q).find('tbody tr[lay-data-index="'+e+'"]').after(S.trs),r.find(L).find('tbody tr[lay-data-index="'+e+'"]').after(S.trs_fixed),r.find(Y).find('tbody tr[lay-data-index="'+e+'"]').after(S.trs_fixed_r),c.renderTreeTable(S.trs,A),n)&&!p&&layui.each(v,function(e,t){U({dataIndex:t[R],trElem:r.find('tr[lay-data-index="'+t[R]+'"]').first(),tableViewElem:r,tableId:d,options:o},a,n,i,l)})}else c.isExpandAll=!1,(n&&!p?(layui.each(v,function(e,t){U({dataIndex:t[R],trElem:r.find('tr[lay-data-index="'+t[R]+'"]').first(),tableViewElem:r,tableId:d,options:o},a,n,i,l)}),r.find(v.map(function(e,t,a){return'tr[lay-data-index="'+e[R]+'"]'}).join(","))):(b=c.treeToFlat(v,y[f.id],e),r.find(b.map(function(e,t,a){return'tr[lay-data-index="'+e[R]+'"]'}).join(",")))).addClass(F);V("resize-"+d,function(){j.resize(d)},0)(),l&&"loading"!==y[z]&&(C=u.callback.onExpand,"function"===layui.type(C))&&C(d,y,x)}return h},g=(j.expandNode=function(e,t){var a,n,i,e=P(e);if(e)return a=(t=t||{}).index,n=t.expandFlag,i=t.inherit,t=t.callbackFlag,e=e.getOptions().elem.next(),U({trElem:e.find('tr[lay-data-index="'+a+'"]').first()},n,i,null,t)},j.expandAll=function(a,e){if("boolean"!==layui.type(e))return y.error("expandAll \u7684\u5c55\u5f00\u72b6\u6001\u53c2\u6570\u53ea\u63a5\u6536true/false");var t=P(a);if(t){t.isExpandAll=e;var n=t.getOptions(),i=n.tree,l=n.elem.next(),r=i.customName.isParent,d=i.customName.id,o=i.view.showFlexIconIfNotParent;if(e){e=j.getData(a,!0);if(i["async"].enable){var c=!0;if(layui.each(e,function(e,t){if(t[r]&&!t[z])return!(c=!1)}),!c)return void layui.each(j.getData(a),function(e,t){j.expandNode(a,{index:t[R],expandFlag:!0,inherit:!0})})}var u=!0;if(layui.each(e,function(e,t){if(t[r]&&!t[X])return!(u=!1)}),u)t.updateStatus(null,function(e){(e[r]||o)&&(e[H]=!0,e[d]!==undefined)&&(t.status.expand[e[d]]=!0)}),l.find('tbody tr[data-level!="0"]').removeClass(F),l.find(".layui-table-tree-flexIcon").html(i.view.flexIconOpen),i.view.showIcon&&l.find(".layui-table-tree-nodeIcon:not(.layui-table-tree-iconCustom,.layui-table-tree-iconLeaf)").html(i.view.iconOpen);else{if(t.updateStatus(null,function(e){(e[r]||o)&&(e[H]=!0,e[X]=!0,e[d]!==undefined)&&(t.status.expand[e[d]]=!0)}),n.initSort&&n.initSort.type&&(!n.url||n.autoSort))return j.sort(a);var f,n=B.getTrHtml(a,e),s={trs:E(n.trs.join("")),trs_fixed:E(n.trs_fixed.join("")),trs_fixed_r:E(n.trs_fixed_r.join(""))};layui.each(e,function(e,t){var a=t[R].split("-").length-1;f={"data-index":t[R],"lay-data-index":t[R],"data-level":a},s.trs.eq(e).attr(f),s.trs_fixed.eq(e).attr(f),s.trs_fixed_r.eq(e).attr(f)}),layui.each(["main","fixed-l","fixed-r"],function(e,t){l.find(".layui-table-"+t+" tbody").html(s[["trs","trs_fixed","trs_fixed_r"][e]])}),t.renderTreeTable(l,0,!1)}}else t.updateStatus(null,function(e){(e[r]||o)&&(e[H]=!1,e[d]!==undefined)&&(t.status.expand[e[d]]=!1)}),l.find('.layui-table-box tbody tr[data-level!="0"]').addClass(F),l.find(".layui-table-tree-flexIcon").html(i.view.flexIconClose),i.view.showIcon&&l.find(".layui-table-tree-nodeIcon:not(.layui-table-tree-iconCustom,.layui-table-tree-iconLeaf)").html(i.view.iconClose);j.resize(a)}},t.prototype.renderTreeTable=function(e,t,a){var n=this,i=n.getOptions(),l=i.elem.next(),r=(l.hasClass(h)||l.addClass(h),i.id),d=i.tree||{},o=(d.data,d.view||{}),c=d.customName||{},u=c.isParent,f=(l.attr("lay-filter"),n),s=((t=t||0)||(l.find(".layui-table-body tr:not([data-level])").attr("data-level",t),layui.each(B.cache[r],function(e,t){l.find('.layui-table-main tbody tr[data-level="0"]:eq('+e+")").attr("lay-data-index",t[R]),l.find('.layui-table-fixed-l tbody tr[data-level="0"]:eq('+e+")").attr("lay-data-index",t[R]),l.find('.layui-table-fixed-r tbody tr[data-level="0"]:eq('+e+")").attr("lay-data-index",t[R])})),null),y=c.name,p=o.indent||14;if(layui.each(e.find('td[data-field="'+y+'"]'),function(e,t){var a,n,i=(t=E(t)).closest("tr"),t=t.children(".layui-table-cell");t.hasClass("layui-table-tree-item")||(n=i.attr("lay-data-index"))&&(i=l.find('tr[lay-data-index="'+n+'"]'),(a=f.getNodeDataByIndex(n))[H]&&a[u]&&((s=s||{})[n]=!0),a[b]&&i.find('input[type="checkbox"][name="layTableCheckbox"]').prop("indeterminate",!0),n=t.html(),(t=i.find('td[data-field="'+y+'"]>div.layui-table-cell')).addClass("layui-table-tree-item"),t.html(['
            ',a[H]?o.flexIconOpen:o.flexIconClose,"
            ",o.showIcon?'
            '+(a[c.icon]||o.icon||(a[u]?a[H]?o.iconOpen:o.iconClose:o.iconLeaf)||"")+"
            ":"",n].join("")).find(".layui-table-tree-flexIcon").on("click",function(e){layui.stope(e),U({trElem:i},null,null,null,!0)}))}),!t&&d.view.expandAllDefault&&n.isExpandAll===undefined)return j.expandAll(r,!0);!1!==a&&s?layui.each(s,function(e,t){e=l.find('tr[lay-data-index="'+e+'"]');e.find(".layui-table-tree-flexIcon").html(o.flexIconOpen),U({trElem:e.first()},!0)}):V("renderTreeTable-"+r,function(){i.hasNumberCol&&g(n),x.render(E('.layui-table-tree[lay-id="'+r+'"]'))},0)()},function(a){var e=a.getOptions(),t=e.elem.next(),n=0,i=t.find(".layui-table-main tbody tr"),l=t.find(".layui-table-fixed-l tbody tr"),r=t.find(".layui-table-fixed-r tbody tr");layui.each(a.treeToFlat(B.cache[e.id]),function(e,t){a.getNodeDataByIndex(t[R]).LAY_NUM=++n,i.eq(e).find(".laytable-cell-numbers").html(n),l.eq(e).find(".laytable-cell-numbers").html(n),r.eq(e).find(".laytable-cell-numbers").html(n)})}),s=(t.prototype.render=function(e){var t=this;t.tableIns=B["reloadData"===e?"reloadData":"reload"](t.tableIns.config.id,E.extend(!0,{},t.config)),t.config=t.tableIns.config},t.prototype.reload=function(e,t,a){var n=this;e=e||{},delete n.haveInit,layui.each(e,function(e,t){"array"===layui.type(t)&&delete n.config[e]}),l(n.getOptions().id,e,a||!0),n.config=E.extend(t,{},n.config,e),n.render(a)},j.reloadData=function(){var e=E.extend(!0,[],arguments);return e[3]="reloadData",j.reload.apply(null,e)},function(e,a,n){var i=[];return layui.each(e,function(e,t){"function"===layui.type(a)?a(t):E.extend(t,a),i.push(E.extend({},t)),i=i.concat(s(t[n],a,n))}),i}),r=(t.prototype.updateStatus=function(e,t){var a=this.getOptions(),n=a.tree;return e=e||B.cache[a.id],s(e,t,n.customName.children)},t.prototype.getTableData=function(){var e=this.getOptions();return e.url?B.cache[e.id]:e.data},j.updateStatus=function(e,t,a){var e=P(e),n=e.getOptions();return a=a||(n.url?B.cache[n.id]:n.data),e.updateStatus(a,t)},j.sort=function(e){var t,a=P(e);!a||(t=a.getOptions()).url&&!t.autoSort||(a.initData(),j.renderData(e))},function(n){var t=n.config.id,i=P(t),a=n.data=j.getNodeDataByIndex(t,n.index),l=a[R],r=(n.dataIndex=l,n.update);n.update=function(){var e=arguments,t=(E.extend(i.getNodeDataByIndex(l),e[0]),r.apply(this,e)),a=n.config.tree.customName.name;return a in e[0]&&n.tr.find('td[data-field="'+a+'"]').children("div.layui-table-cell").removeClass("layui-table-tree-item"),i.renderTreeTable(n.tr,n.tr.attr("data-level"),!1),t},n.del=function(){j.removeNode(t,a)},n.setRowChecked=function(e){j.setRowChecked(t,{index:a,checked:e})}}),o=(j.updateNode=function(e,a,t){var n,i,l,r,d,o=P(e);o&&((r=o.getOptions()).tree,r=(n=r.elem.next()).find('tr[lay-data-index="'+a+'"]'),i=r.attr("data-index"),l=r.attr("data-level"),t)&&(r=o.getNodeDataByIndex(a,!1,t),d=B.getTrHtml(e,[r]),layui.each(["main","fixed-l","fixed-r"],function(e,t){n.find(".layui-table-"+t+' tbody tr[lay-data-index="'+a+'"]').replaceWith(E(d[["trs","trs_fixed","trs_fixed_r"][e]].join("")).attr({"data-index":i,"lay-data-index":a,"data-level":l}))}),o.renderTreeTable(n.find('tr[lay-data-index="'+a+'"]'),l))},j.removeNode=function(e,t){var a,n,i,l,r,d=P(e);d&&(r=(a=d.getOptions()).tree,n=a.elem.next(),i=[],t=d.getNodeDataByIndex("string"===layui.type(t)?t:t[R],!1,"delete"),l=d.getNodeDataByIndex(t[f]),d.updateCheckStatus(l),l=d.treeToFlat([t],t[r.customName.pid],t[f]),layui.each(l,function(e,t){i.push('tr[lay-data-index="'+t[R]+'"]')}),n.find(i.join(",")).remove(),r=d.initData(),layui.each(d.treeToFlat(r),function(e,t){t[m]&&t[m]!==t[R]&&n.find('tr[lay-data-index="'+t[m]+'"]').attr({"data-index":t[R],"lay-data-index":t[R]})}),layui.each(B.cache[e],function(e,t){n.find('tr[data-level="0"][lay-data-index="'+t[R]+'"]').attr("data-index",e)}),a.hasNumberCol)&&g(d)},j.addNodes=function(e,t){var a=P(e);if(a){var n=a.getOptions(),i=n.tree,l=n.elem.next(),r=(t=t||{}).parentIndex,d=t.index,o=t.data,t=t.focus,c=(r="number"===layui.type(r)?r.toString():r)?a.getNodeDataByIndex(r):null,d="number"===layui.type(d)?d:-1,o=E.extend(!0,[],layui.isArray(o)?o:[o]);a.getTableData();if(c){var u=i.customName.isParent,f=i.customName.children;c[u]=!0;var s=(s=c[f])?(y=s.splice(-1===d?s.length:d),c[f]=s.concat(o,y)):c[f]=o,f=(a.updateStatus(s,function(e){(e[u]||i.view.showFlexIconIfNotParent)&&(e[X]=!1)}),a.treeToFlat(s));l.find(f.map(function(e){return'tr[lay-data-index="'+e[R]+'"]'}).join(",")).remove(),a.initData(),c[X]=!1,c[z]="local",U({trElem:l.find('tr[lay-data-index="'+r+'"]')},!0)}else{var y=B.cache[e].splice(-1===d?B.cache[e].length:d);if(B.cache[e]=B.cache[e].concat(o,y),n.url||(n.page?(s=n.page,n.data.splice.apply(n.data,[s.limit*(s.curr-1),s.limit].concat(B.cache[e]))):n.data=B.cache[e]),a.initData(),l.find(".layui-none").length)return B.renderData(e),o;var p,f=B.getTrHtml(e,o),x={trs:E(f.trs.join("")),trs_fixed:E(f.trs_fixed.join("")),trs_fixed_r:E(f.trs_fixed_r.join(""))},r=(layui.each(o,function(e,t){p={"data-index":t[R],"lay-data-index":t[R],"data-level":"0"},x.trs.eq(e).attr(p),x.trs_fixed.eq(e).attr(p),x.trs_fixed_r.eq(e).attr(p)}),parseInt(o[0][R])-1),s=l.find(q),n=l.find(L),f=l.find(Y);-1==r?(s.find('tr[data-level="0"][data-index="0"]').before(x.trs),n.find('tr[data-level="0"][data-index="0"]').before(x.trs_fixed),f.find('tr[data-level="0"][data-index="0"]').before(x.trs_fixed_r)):-1===d?(s.find("tbody").append(x.trs),n.find("tbody").append(x.trs_fixed),f.find("tbody").append(x.trs_fixed_r)):(r=y[0][m],s.find('tr[data-level="0"][data-index="'+r+'"]').before(x.trs),n.find('tr[data-level="0"][data-index="'+r+'"]').before(x.trs_fixed),f.find('tr[data-level="0"][data-index="'+r+'"]').before(x.trs_fixed_r)),layui.each(B.cache[e],function(e,t){l.find('tr[data-level="0"][lay-data-index="'+t[R]+'"]').attr("data-index",e)}),a.renderTreeTable(l.find(o.map(function(e,t,a){return'tr[lay-data-index="'+e[R]+'"]'}).join(",")))}return a.updateCheckStatus(c),j.resize(e),t&&l.find(q).find('tr[lay-data-index="'+o[0][R]+'"]').get(0).scrollIntoViewIfNeeded(),o}},j.checkStatus=function(e,n){var i,t,a;if(P(e))return i=B.config.checkName,t=j.getData(e,!0).filter(function(e,t,a){return e[i]||n&&e[b]}),a=!0,layui.each(B.cache[e],function(e,t){if(!t[i])return!(a=!1)}),{data:t,isAll:a}},j.on("sort",function(e){var e=e.config,t=e.elem.next(),e=e.id;t.hasClass(h)&&j.sort(e)}),j.on("row",function(e){e.config.elem.next().hasClass(h)&&r(e)}),j.on("rowDouble",function(e){var t=e.config,a=t.elem.next();t.id;a.hasClass(h)&&(r(e),(t.tree||{}).view.dblClickExpand)&&U({trElem:e.tr.first()},null,null,null,!0)}),j.on("rowContextmenu",function(e){var t=e.config,a=t.elem.next();t.id;a.hasClass(h)&&r(e)}),j.on("tool",function(e){var t=e.config,a=t.elem.next();t.id;a.hasClass(h)&&r(e)}),j.on("edit",function(e){var t=e.config,a=t.elem.next();t.id;a.hasClass(h)&&(r(e),e.field===t.tree.customName.name)&&((a={})[e.field]=e.value,e.update(a))}),j.on("radio",function(e){var t=e.config,a=t.elem.next(),t=t.id;a.hasClass(h)&&(a=P(t),r(e),o.call(a,e.tr,e.checked))}),t.prototype.updateCheckStatus=function(e,t){var a=this.getOptions(),n=(a.tree,a.id),i=a.elem.next(),l=B.config.checkName,r=(e&&(a=this.updateParentCheckStatus(e,"boolean"===layui.type(t)?t:null),layui.each(a,function(e,t){x.render(i.find('tr[lay-data-index="'+t[R]+'"] input[name="layTableCheckbox"]:not(:disabled)').prop({checked:t[l],indeterminate:t[b]}))})),!0),d=!1;return layui.each(B.cache[n],function(e,t){(t[l]||t[b])&&(d=!0),t[l]||(r=!1)}),d=d&&!r,x.render(i.find('input[name="layTableCheckbox"][lay-filter="layTableAllChoose"]').prop({checked:r,indeterminate:d})),r},t.prototype.updateParentCheckStatus=function(a,n){var i,e=this.getOptions(),t=e.tree,e=e.id,l=B.config.checkName,t=t.customName.children,r=[];return!(a[b]=!1)===n?a[t].length?layui.each(a[t],function(e,t){if(!t[l])return n=!1,a[b]=!0}):n=!1:!1===n?layui.each(a[t],function(e,t){if(t[l]||t[b])return a[b]=!0}):(n=!1,i=0,layui.each(a[t],function(e,t){t[l]&&i++}),n=a[t].length?a[t].length===i:a[l],a[b]=!n&&0
            '),n=(e.tree(a),i.elem=u(i.elem));if(n[0]){if(e.key=i.id||e.index,e.elem=a,e.elemNone=u('
            '+i.text.none+"
            "),n.html(e.elem),0==e.elem.find(".layui-tree-set").length)return e.elem.append(e.elemNone);i.showCheckbox&&e.renderForm("checkbox"),e.elem.find(".layui-tree-set").each(function(){var e=u(this);e.parent(".layui-tree-pack")[0]||e.addClass("layui-tree-setHide"),!e.next()[0]&&e.parents(".layui-tree-pack").eq(1).hasClass("layui-tree-lineExtend")&&e.addClass(N),e.next()[0]||e.parents(".layui-tree-set").eq(0).next()[0]||e.addClass(N)}),e.events()}},l.prototype.renderForm=function(e){i.render(e,"LAY-tree-"+this.index)},l.prototype.tree=function(c,e){var s=this,d=s.config,e=e||d.data;layui.each(e,function(e,i){1!=typeof i.spread&&1!=d.spread||(i.spread=!0);var a,n,t=i.children&&0"),r=u(['
            ','
            ','
            ',d.showLine?t?'':0==i.pid?'':'':'',d.showCheckbox?'':"",d.isJump&&i.href?''+(i.title||i.label||d.text.defaultNodeName)+"":''+(i.title||i.label||d.text.defaultNodeName)+"","
            ",d.edit?(a={add:'',update:'',del:''},n=['
            '],!0===d.edit&&(d.edit=["update","del"]),"object"==typeof d.edit?(layui.each(d.edit,function(e,i){n.push(a[i]||"")}),n.join("")+"
            "):void 0):"","
            "].join(""));t&&(r.append(l),s.tree(l,i.children)),c.append(r),r.prev("."+f)[0]&&r.prev().children(".layui-tree-pack").addClass("layui-tree-showLine"),t||r.parent(".layui-tree-pack").addClass("layui-tree-lineExtend"),s.spread(r,i),d.showCheckbox&&(i.checked&&s.checkids.push(i.id),s.checkClick(r,i)),d.edit&&s.operate(r,i)})},l.prototype.spread=function(n,i){var t=this.config,e=n.children("."+m),a=e.children("."+x),l=e.find("."+C),e=e.find("."+g),r=t.onlyIconControl?l:a,c="";r.on("click",function(e){var i=n.children("."+b),a=(r.children(".layui-icon")[0]?r:r.find(".layui-tree-line")).children(".layui-icon");i[0]?n.hasClass(w)?(n.removeClass(w),i.slideUp(200),a.removeClass(v).addClass(k)):(n.addClass(w),i.slideDown(200),a.addClass(v).removeClass(k),t.accordion&&((i=n.siblings("."+f)).removeClass(w),i.children("."+b).slideUp(200),i.find(".layui-tree-line").children(".layui-icon").removeClass(v).addClass(k))):c="normal"}),e.on("click",function(){var e=u(this);e.hasClass(o)||(u("."+s).removeClass(s),e.addClass(s),c=n.hasClass(w)?t.onlyIconControl?"open":"close":t.onlyIconControl?"close":"open",t.click&&t.click({elem:n,state:c,data:i}))})},l.prototype.setCheckbox=function(e,i,a){var t,n=this.config,l=a.prop("checked");a.prop("disabled")||("object"!=typeof i.children&&!e.find("."+b)[0]||e.find("."+b).find('input[same="layuiTreeCheck"]').each(function(){this.disabled||0'));var a,l=o.operate&&o.operate(t),r={};if(r.title=o.text.defaultNodeName,r.id=l,d.tree(c.children("."+b),[r]),o.showLine&&(n[0]?(n.hasClass(L)||n.addClass(L),c.find("."+b).each(function(){u(this).children("."+f).last().addClass(N)}),(n.children("."+f).last().prev().hasClass(N)?n.children("."+f).last().prev():n.children("."+f).last()).removeClass(N),!c.parent("."+b)[0]&&c.next()[0]&&n.children("."+f).last().removeClass(N)):(l=c.siblings("."+f),a=1,r=c.parent("."+b),layui.each(l,function(e,i){u(i).children("."+b)[0]||(a=0)}),(1==a?(l.children("."+b).addClass(T),l.children("."+b).children("."+f).removeClass(N),c.children("."+b).addClass(T),r.removeClass(L),r.children("."+f).last().children("."+b).children("."+f).last()):c.children("."+b).children("."+f)).addClass(N))),!o.showCheckbox)return;h.find('input[same="layuiTreeCheck"]')[0].checked&&(c.children("."+b).children("."+f).last().find('input[same="layuiTreeCheck"]')[0].checked=!0),d.renderForm("checkbox")}else"update"==e?(l=h.children("."+g).html(),h.children("."+g).html(""),h.append(''),h.children(".layui-tree-editInput").val(l).focus(),i=function(e){var i=e.val().trim()||o.text.defaultNodeName;e.remove(),h.children("."+g).html(i),t.data.title=i,o.operate&&o.operate(t)},h.children(".layui-tree-editInput").blur(function(){i(u(this))}),h.children(".layui-tree-editInput").on("keydown",function(e){13===e.keyCode&&(e.preventDefault(),i(u(this)))})):p.confirm('\u786e\u8ba4\u5220\u9664\u8be5\u8282\u70b9 "'+(s.title||"")+'" \u5417\uff1f',function(e){var l,a,i;o.operate&&o.operate(t),t.status="remove",p.close(e),c.prev("."+f)[0]||c.next("."+f)[0]||c.parent("."+b)[0]?(c.siblings("."+f).children("."+m)[0]?(o.showCheckbox&&(l=function(e){var i,a,n,t;e.parents("."+f)[0]&&(i=e.siblings("."+f).children("."+m),a=(e=e.parent("."+b).prev()).find('input[same="layuiTreeCheck"]')[0],n=1,(t=0)==a.checked)&&(i.each(function(e,i){i=u(i).find('input[same="layuiTreeCheck"]')[0];0!=i.checked||i.disabled||(n=0),i.disabled||(t=1)}),1==n)&&1==t&&(a.checked=!0,d.renderForm("checkbox"),l(e.parent("."+f)))})(c),o.showLine&&(e=c.siblings("."+f),a=1,i=c.parent("."+b),layui.each(e,function(e,i){u(i).children("."+b)[0]||(a=0)}),1==a?(n[0]||(i.removeClass(L),e.children("."+b).addClass(T),e.children("."+b).children("."+f).removeClass(N)),(c.next()[0]?i.children("."+f).last():c.prev()).children("."+b).children("."+f).last().addClass(N),c.next()[0]||c.parents("."+f)[1]||c.parents("."+f).eq(0).next()[0]||c.prev("."+f).addClass(N)):!c.next()[0]&&c.hasClass(N)&&c.prev().addClass(N))):(e=c.parent("."+b).prev(),o.showLine?(e.find("."+C).removeClass("layui-tree-line"),e.find("."+C).children(".layui-icon").removeClass(v).addClass("layui-icon-file"),(i=e.parents("."+b).eq(0)).addClass(L),i.children("."+f).each(function(){u(this).children("."+b).children("."+f).last().addClass(N)})):e.find(".layui-tree-iconArrow").addClass(y),c.parents("."+f).eq(0).removeClass(w),c.parent("."+b).remove()),c.remove()):(c.remove(),d.elem.append(d.elemNone))})})},l.prototype.events=function(){var i=this,t=i.config;i.elem.find(".layui-tree-checkedFirst");0','
            ','","
            ","{{# if(d.data.showSearch){ }}",'","{{# } }}",'
              ',""].join("")},p=['
              ',y({index:0,checkAllName:"layTransferLeftCheckAll"}),'
              ','",'","
              ",y({index:1,checkAllName:"layTransferRightCheckAll"}),"
              "].join(""),v=function(e){var t=this;t.index=++i.index,t.config=s.extend({},t.config,i.config,e),t.render()};v.prototype.config={title:["\u5217\u8868\u4e00","\u5217\u8868\u4e8c"],width:200,height:360,data:[],value:[],showSearch:!1,id:"",text:{none:"\u65e0\u6570\u636e",searchNone:"\u65e0\u5339\u914d\u6570\u636e"}},v.prototype.reload=function(e){var t=this;t.config=s.extend({},t.config,e),t.render()},v.prototype.render=function(){var e=this,t=e.config,a=e.elem=s(n(p,{open:"{{",close:"}}"}).render({data:t,index:e.index})),i=t.elem=s(t.elem);i[0]&&(t.data=t.data||[],t.value=t.value||[],t.id="id"in t?t.id:elem.attr("id")||e.index,e.key=t.id,i.html(e.elem),e.layBox=e.elem.find("."+c),e.layHeader=e.elem.find("."+u),e.laySearch=e.elem.find("."+o),e.layData=a.find("."+f),e.layBtn=a.find(".layui-transfer-active .layui-btn"),e.layBox.css({width:t.width,height:t.height}),e.layData.css({height:(i=t.height-e.layHeader.outerHeight(),t.showSearch&&(i-=e.laySearch.outerHeight()),i-2)}),e.renderData(),e.events())},v.prototype.renderData=function(){var e=this,t=e.config,l=[{checkName:"layTransferLeftCheck",views:[]},{checkName:"layTransferRightCheck",views:[]}];e.parseData(function(a){var i=a.selected?1:0,n=["
            • ",'',"
            • "].join("");i?layui.each(t.value,function(e,t){t==a.value&&a.selected&&(l[i].views[e]=n)}):l[i].views.push(n),delete a.selected}),e.layData.eq(0).html(l[0].views.join("")),e.layData.eq(1).html(l[1].views.join("")),e.renderCheckBtn()},v.prototype.renderForm=function(e){t.render(e,"LAY-transfer-"+this.index)},v.prototype.renderCheckBtn=function(r){var c=this,o=c.config;r=r||{},c.layBox.each(function(e){var t=s(this),a=t.find("."+f),t=t.find("."+u).find('input[type="checkbox"]'),i=a.find('input[type="checkbox"]'),n=0,l=!1;i.each(function(){var e=s(this).data("hide");(this.checked||this.disabled||e)&&n++,this.checked&&!e&&(l=!0)}),t.prop("checked",l&&n===i.length),c.layBtn.eq(e)[l?"removeClass":"addClass"](h),r.stopNone||(i=a.children("li:not(."+d+")").length,c.noneView(a,i?"":o.text.none))}),c.renderForm("checkbox")},v.prototype.noneView=function(e,t){var a=s('

              '+(t||"")+"

              ");e.find("."+r)[0]&&e.find("."+r).remove(),t.replace(/\s/g,"")&&e.append(a)},v.prototype.setValue=function(){var e=this.config,t=[];return this.layBox.eq(1).find("."+f+' input[type="checkbox"]').each(function(){s(this).data("hide")||t.push(this.value)}),e.value=t,this},v.prototype.parseData=function(t){var i=this.config,n=[];return layui.each(i.data,function(e,a){a=("function"==typeof i.parseData?i.parseData(a):a)||a,n.push(a=s.extend({},a)),layui.each(i.value,function(e,t){t==a.value&&(a.selected=!0)}),t&&t(a)}),i.data=n,this},v.prototype.getData=function(e){var t=this.config,i=[];return this.setValue(),layui.each(e||t.value,function(e,a){layui.each(t.data,function(e,t){delete t.selected,a==t.value&&i.push(t)})}),i},v.prototype.transfer=function(e,t){var a,i=this,n=i.config,l=i.layBox.eq(e),r=[],t=(t?((a=(t=t).find('input[type="checkbox"]'))[0].checked=!1,l.siblings("."+c).find("."+f).append(t.clone()),t.remove(),r.push(a[0].value),i.setValue()):l.each(function(e){s(this).find("."+f).children("li").each(function(){var e=s(this),t=e.find('input[type="checkbox"]'),a=t.data("hide");t[0].checked&&!a&&(t[0].checked=!1,l.siblings("."+c).find("."+f).append(e.clone()),e.remove(),r.push(t[0].value)),i.setValue()})}),i.renderCheckBtn(),l.siblings("."+c).find("."+o+" input"));""!==t.val()&&t.trigger("keyup"),n.onchange&&n.onchange(i.getData(r),e)},v.prototype.events=function(){var n=this,l=n.config;n.elem.on("click",'input[lay-filter="layTransferCheckbox"]+',function(){var e=s(this).prev(),t=e[0].checked,a=e.parents("."+c).eq(0).find("."+f);e[0].disabled||("all"===e.attr("lay-type")&&a.find('input[type="checkbox"]').each(function(){this.disabled||(this.checked=t)}),setTimeout(function(){n.renderCheckBtn({stopNone:!0})},0))}),n.elem.on("dblclick","."+f+">li",function(e){var t=s(this),a=t.children('input[type="checkbox"]'),i=t.parent().parent();a[0].disabled||n.transfer(i.data("index"),t)}),n.layBtn.on("click",function(){var e=s(this),t=e.data("index");e.hasClass(h)||n.transfer(t)}),n.laySearch.find("input").on("keyup",function(){var i=this.value,e=s(this).parents("."+o).eq(0).siblings("."+f),t=e.children("li"),t=(t.each(function(){var e=s(this),t=e.find('input[type="checkbox"]'),a=t[0].title,a=("cs"!==l.showSearch&&(a=a.toLowerCase(),i=i.toLowerCase()),-1!==a.indexOf(i));e[a?"removeClass":"addClass"](d),t.data("hide",!a)}),n.renderCheckBtn(),t.length===e.children("li."+d).length);n.noneView(e,t?l.text.searchNone:"")})},l.that={},l.config={},i.reload=function(e,t){e=l.that[e];return e.reload(t),l.call(e)},i.getData=function(e){return l.that[e].getData()},i.render=function(e){e=new v(e);return l.call(e)},e(a,i)});layui.define(["jquery","lay"],function(e){"use strict";var a=layui.$,t=layui.lay,o=(layui.hint(),layui.device(),{config:{},set:function(e){var i=this;return i.config=a.extend({},i.config,e),i},on:function(e,i){return layui.onevent.call(this,r,e,i)}}),r="carousel",d="layui-this",s="layui-carousel-left",u="layui-carousel-right",c="layui-carousel-prev",m="layui-carousel-next",l="layui-carousel-arrow",f="layui-carousel-ind",i=function(e){var i=this;i.config=a.extend({},i.config,o.config,e),i.render()};i.prototype.config={width:"600px",height:"280px",full:!1,arrow:"hover",indicator:"inside",autoplay:!0,interval:3e3,anim:"",trigger:"click",index:0},i.prototype.render=function(){var e=this,i=e.config,n=a(i.elem);if(1*[carousel-item]>*"),i.index<0&&(i.index=0),i.index>=e.elemItem.length&&(i.index=e.elemItem.length-1),i.interval<800&&(i.interval=800),i.full?i.elem.css({position:"fixed",width:"100%",height:"100%",zIndex:9999}):i.elem.css({width:i.width,height:i.height}),i.elem.attr("lay-anim",i.anim),e.elemItem.eq(i.index).addClass(d),e.elemItem.length<=1||(e.indicator(),e.arrow(),e.autoplay(),e.events()))},i.prototype.reload=function(e){var i=this;clearInterval(i.timer),i.config=a.extend({},i.config,e),i.render()},i.prototype.prevIndex=function(){var e=this.config.index-1;return e=e<0?this.elemItem.length-1:e},i.prototype.nextIndex=function(){var e=this.config.index+1;return e=e>=this.elemItem.length?0:e},i.prototype.addIndex=function(e){var i=this.config;i.index=i.index+(e=e||1),i.index>=this.elemItem.length&&(i.index=0)},i.prototype.subIndex=function(e){var i=this.config;i.index=i.index-(e=e||1),i.index<0&&(i.index=this.elemItem.length-1)},i.prototype.autoplay=function(){var e=this,i=e.config;i.autoplay&&(clearInterval(e.timer),e.timer=setInterval(function(){e.slide()},i.interval))},i.prototype.arrow=function(){var i=this,e=i.config,n=a(['",'"].join(""));e.elem.attr("lay-arrow",e.arrow),e.elem.find("."+l)[0]&&e.elem.find("."+l).remove(),e.elem.append(n),n.on("click",function(){var e=a(this).attr("lay-type");i.slide(e)})},i.prototype["goto"]=function(e){var i=this,n=i.config;e>n.index?i.slide("add",e-n.index):e
                ',(i=[],layui.each(e.elemItem,function(e){i.push("")}),i.join("")),"
              "].join(""));n.elem.attr("lay-indicator",n.indicator),n.elem.find("."+f)[0]&&n.elem.find("."+f).remove(),n.elem.append(t),"updown"===n.anim&&t.css("margin-top",-t.height()/2),t.find("li").on("hover"===n.trigger?"mouseover":n.trigger,function(){e["goto"](a(this).index())})},i.prototype.slide=function(e,i){var n=this,t=n.elemItem,a=n.config,o=a.index,l=a.elem.attr("lay-filter");n.haveSlide||("sub"===e?(n.subIndex(i),t.eq(a.index).addClass(c),setTimeout(function(){t.eq(o).addClass(u),t.eq(a.index).addClass(u)},50)):(n.addIndex(i),t.eq(a.index).addClass(m),setTimeout(function(){t.eq(o).addClass(s),t.eq(a.index).addClass(s)},50)),setTimeout(function(){t.removeClass(d+" "+c+" "+m+" "+s+" "+u),t.eq(a.index).addClass(d),n.haveSlide=!1},300),n.elemInd.find("li").eq(a.index).addClass(d).siblings().removeClass(d),n.haveSlide=!0,e={index:a.index,prevIndex:o,item:t.eq(a.index)},"function"==typeof a.change&&a.change(e),layui.event.call(this,r,"change("+l+")",e))},i.prototype.events=function(){var e=this,i=e.config;i.elem.data("haveEvents")||(i.elem.on("mouseenter",function(){"always"!==e.config.autoplay&&clearInterval(e.timer)}).on("mouseleave",function(){"always"!==e.config.autoplay&&e.autoplay()}),i.elem.data("haveEvents",!0))},o.render=function(e){return new i(e)},e(r,o)});layui.define(["jquery","lay"],function(e){"use strict";var s=layui.jquery,r=layui.lay,c={config:{},index:layui.rate?layui.rate.index+1e4:0,set:function(e){var a=this;return a.config=s.extend({},a.config,e),a},on:function(e,a){return layui.onevent.call(this,l,e,a)}},l="rate",f="layui-icon-rate",h="layui-icon-rate-solid",o="layui-icon-rate-half",u="layui-icon-rate-solid layui-icon-rate-half",v="layui-icon-rate layui-icon-rate-half",a=function(e){var a=this;a.index=++c.index,a.config=s.extend({},a.config,c.config,e),a.render()};a.prototype.config={length:5,text:!1,readonly:!1,half:!1,value:0,theme:""},a.prototype.render=function(){var e=this,a=e.config,l=s(a.elem);if(1a.length&&(a.value=a.length),parseInt(a.value)===a.value||a.half||(a.value=Math.ceil(a.value)-a.value<.5?Math.ceil(a.value):Math.floor(a.value)),'
                "),t=1;t<=a.length;t++){var o='
              • ";a.half&&parseInt(a.value)!==a.value&&t==Math.ceil(a.value)?n=n+'
              • ":n+=o}n+="
              "+(a.text?''+a.value+"\u661f":"")+"";var l=a.elem,u=l.next(".layui-rate");u[0]&&u.remove(),e.elemTemp=s(n),a.span=e.elemTemp.next("span"),a.setText&&a.setText(a.value),l.html(e.elemTemp),l.addClass("layui-inline"),a.readonly||e.action()},a.prototype.setvalue=function(e){this.config.value=e,this.render()},a.prototype.action=function(){var i=this.config,n=this.elemTemp,t=n.find("i").width();n.children("li").each(function(e){var a=e+1,l=s(this);l.on("click",function(e){i.value=a,i.half&&e.pageX-s(this).offset().left<=t/2&&(i.value=i.value-.5),i.text&&n.next("span").text(i.value+"\u661f"),i.choose&&i.choose(i.value),i.setText&&i.setText(i.value)}),l.on("mousemove",function(e){n.find("i").each(function(){s(this).addClass(f).removeClass(u)}),n.find("i:lt("+a+")").each(function(){s(this).addClass(h).removeClass(v)}),i.half&&e.pageX-s(this).offset().left<=t/2&&l.children("i").addClass(o).removeClass(h)}),l.on("mouseleave",function(){n.find("i").each(function(){s(this).addClass(f).removeClass(u)}),n.find("i:lt("+Math.floor(i.value)+")").each(function(){s(this).addClass(h).removeClass(v)}),i.half&&parseInt(i.value)!==i.value&&n.children("li:eq("+Math.floor(i.value)+")").children("i").addClass(o).removeClass("layui-icon-rate-solid layui-icon-rate")})})},a.prototype.events=function(){this.config},c.render=function(e){e=new a(e);return function(){var a=this;return{setvalue:function(e){a.setvalue.call(a,e)},config:a.config}}.call(e)},e(l,c)});layui.define("jquery",function(l){"use strict";var g=layui.$,e=function(l){};e.prototype.load=function(l){var t,i,n,e,r,o,a,c,m,s,u,f,y,d=this,p=0,h=g((l=l||{}).elem);if(h[0])return e=g(l.scrollElem||document),r=l.mb||50,o=!("isAuto"in l)||l.isAuto,a=l.end||"\u6ca1\u6709\u66f4\u591a\u4e86",c=l.scrollElem&&l.scrollElem!==document,s=g('"),h.find(".layui-flow-more")[0]||h.append(s),u=function(l,e){l=g(l),s.before(l),(e=0==e||null)?s.html(a):s.find("a").html(m),i=e,t=null,y&&y()},(f=function(){t=!0,s.find("a").html(''),"function"==typeof l.done&&l.done(++p,u)})(),s.find("a").on("click",function(){g(this);i||t||f()}),l.isLazyimg&&(y=d.lazyimg({elem:l.elem+" img",scrollElem:l.scrollElem})),o&&e.on("scroll",function(){var e=g(this),o=e.scrollTop();n&&clearTimeout(n),!i&&h.width()&&(n=setTimeout(function(){var l=(c?e:g(window)).height();(c?e.prop("scrollHeight"):document.documentElement.scrollHeight)-o-l<=r&&(t||f())},100))}),d},e.prototype.lazyimg=function(l){var e,c=this,m=0,s=g((l=l||{}).scrollElem||document),u=l.elem||"img",f=l.scrollElem&&l.scrollElem!==document,y=function(e,l){var o,t=s.scrollTop(),l=t+l,i=f?e.offset().top-s.offset().top+t:e.offset().top;t<=i&&i<=l&&e.attr("lay-src")&&(o=e.attr("lay-src"),layui.img(o,function(){var l=c.lazyimg.elem.eq(m);e.attr("src",o).removeAttr("lay-src"),l[0]&&n(l),m++},function(){c.lazyimg.elem.eq(m);e.removeAttr("lay-src")}))},n=function(l,e){var o=(f?e||s:g(window)).height(),t=s.scrollTop(),i=t+o;if(c.lazyimg.elem=g(u),l)y(l,o);else for(var n=0;n"),preview:"Preview"}},x=function(e){return _.trim(e).replace(/^\n|\n$/,"")};e("code",function(e){var M=e=_.extend(!0,{},a,e);e.elem=_(e.elem),e.elem[0]&&layui.each(e.elem.get().reverse(),function(e,a){var t,l,i,o,n,s,c,d,r,u,y=_(a),E=_.extend(!0,{},M,lay.options(a),(t={},layui.each(["title","height","encode","skin","about"],function(e,a){var i=y.attr("lay-"+a);"string"==typeof i&&(t[a]=i)}),t)),p=y.data("code")||(i=[],y.children("textarea").each(function(){i.push(x(this.value))}),0===i.length&&i.push(x(y.html())),i),f=(y.data("code",p),{copy:{className:"file-b",title:["\u590d\u5236\u4ee3\u7801"],event:function(e,a){if("function"==typeof E.onCopy)E.onCopy(l);else try{navigator.clipboard.writeText(C.unescape(l)).then(function(){g.msg("\u5df2\u590d\u5236",{icon:1})})}catch(i){g.msg("\u590d\u5236\u5931\u8d25",{icon:2})}}}}),v=(E.preview&&(a="LAY-CODE-DF-"+e,r=E.layout||["code","preview"],o="iframe"===E.preview,L=_('
              '),d=_('
              '),n=_('
              '),u=_('
              '),s=_('
              '),m=y.parent("."+T.ELEM_PREVIEW),v=y.prev("."+T.ELEM_TAB),h=y.next("."+T.ELEM_ITEM+"-preview"),E.id&&L.attr("id",E.id),L.addClass(E.className),d.attr("lay-filter",a),E.encode=!0,layui.each(r,function(e,a){var i=_('
            • ');0===e&&i.addClass("layui-this"),i.html(E.text[a]),n.append(i)}),_.extend(f,{full:{className:"screen-full",title:["\u6700\u5927\u5316\u663e\u793a","\u8fd8\u539f\u663e\u793a"],event:function(e,a){var i=e.closest("."+T.ELEM_PREVIEW),t="layui-icon-"+this.className,l="layui-icon-screen-restore",o=this.title,n=_("html,body"),s="layui-scollbar-hide";e.hasClass(t)?(i.addClass(T.ELEM_FULL),e.removeClass(t).addClass(l),e.attr("title",o[1]),n.addClass(s)):(i.removeClass(T.ELEM_FULL),e.removeClass(l).addClass(t),e.attr("title",o[0]),n.removeClass(s))}},window:{className:"release",title:["\u5728\u65b0\u7a97\u53e3\u9884\u89c8"],event:function(e,a){C.openWin({content:l})}}}),E.copy&&("array"===layui.type(E.tools)?-1===E.tools.indexOf("copy")&&E.tools.unshift("copy"):E.tools=["copy"]),s.on("click",">i",function(){var e=_(this),a=e.data("type");"function"==typeof f[a].event&&f[a].event(e,a),"function"==typeof E.toolsEvent&&E.toolsEvent(e,a)}),layui.each(E.tools,function(e,a){var i=f[a]&&f[a].className||a,t=f[a].title||[""];s.append('')}),v[0]&&v.remove(),h[0]&&h.remove(),m[0]&&y.unwrap(),d.append(n),E.tools&&d.append(s),y.wrap(L).addClass(T.ELEM_ITEM).before(d),o&&u.html(''),c=function(e){var a=e.children("iframe")[0],i=(o&&a?a.srcdoc=p.join(""):e.html(p.join("")),{container:e,render:function(){b.render(e.find(".layui-form")),w.render()}});setTimeout(function(){"function"==typeof E.done&&E.done(i)},3)},"preview"===r[0]?(u.addClass(T.ELEM_SHOW),y.before(u),c(u)):y.addClass(T.ELEM_SHOW).after(u),E.codeStyle=[E.style,E.codeStyle].join(""),E.previewStyle=[E.style,E.previewStyle].join(""),u.attr("style",E.previewStyle),w.on("tab("+a+")",function(e){var a=_(this),i=_(e.elem).closest("."+T.ELEM_PREVIEW).find("."+T.ELEM_ITEM),e=i.eq(e.index);i.removeClass(T.ELEM_SHOW),e.addClass(T.ELEM_SHOW),"preview"===a.attr("lay-id")&&c(e)})),E.ln?"ol":"ul"),h=_("<"+v+' class="layui-code-'+v+'">'),m=_('
              '),L=(y.addClass("layui-code-view layui-box"),E.skin&&("notepad"===E.skin&&(E.skin="dark"),y.removeClass("layui-code-dark layui-code-light"),y.addClass("layui-code-"+E.skin)),l=p.join(""));"function"==typeof E.codeParse&&(L=l=E.codeParse(L)),L=(L=E.encode?C.escape(L):L).replace(/[\r\t\n]+/g,"
            • "),y.html(h.html("
            • "+L+"
            • ")),E.header&&!y.children("."+T.ELEM_TITLE)[0]&&(m.html((E.title||E.text.code)+(E.about?'
              '+E.about+"
              ":"")),y.prepend(m)),E.elem.length===e+1&&"function"==typeof E.allDone&&E.allDone(),0<(d=Math.floor(h.find("li").length/100))&&h.css("margin-left",d+"px"),E.height&&h.css("max-height",E.height),h.attr("style",E.codeStyle),E.copy&&!E.preview&&(r=_(['','',""].join("")),u=y.children("."+T.ELEM_COPY),(h[0].style.height||h[0].style.maxHeight)&&r.addClass(T.ELEM_COPY+"-offset"),u[0]&&u.remove(),y.append(r),r.on("click",function(){f.copy.event()}))})})}),layui["layui.all"]||layui.addcss("modules/code.css?v=3","skincodecss"); \ No newline at end of file diff --git a/public/static/system/module/fileManager/fileManager.js b/public/static/system/module/fileManager/fileManager.js index aba4bdf..5dc986e 100644 --- a/public/static/system/module/fileManager/fileManager.js +++ b/public/static/system/module/fileManager/fileManager.js @@ -3,12 +3,13 @@ * by meystack to www.swiftadmin.net * Apache2.0 Licensed */ -layui.define(['laypage'], function (exports) { +layui.define(['laypage','dropdown'], function (exports) { "use strict"; var $ = layui.$ , laypage = layui.laypage + , dropdown = layui.dropdown //模块名 , MOD_NAME = 'fileManager' , MOD_INDEX = 'layui_' + MOD_NAME + '_index' //模块索引名 @@ -238,7 +239,7 @@ layui.define(['laypage'], function (exports) { }); } - layui.dropdown.render({ + dropdown.render({ elem: item , trigger: 'contextmenu' , id: 'file' + index diff --git a/public/static/system/module/plugin.js b/public/static/system/module/plugin.js index 413ec1f..ccfa3d6 100644 --- a/public/static/system/module/plugin.js +++ b/public/static/system/module/plugin.js @@ -5,6 +5,7 @@ layui.define(['i18n'], function (exports) { var table = layui.table; var i18n = layui.i18n; var form = layui.form; + var notice = layui.notice; i18n.render(layui.admin.getStorage('language') || 'zh-CN'); var area = [$(window).width() > 800 ? '660px' : '85%', $(window).height() > 800 ? '680px' : '85%']; @@ -61,8 +62,9 @@ layui.define(['i18n'], function (exports) { top.layui.admin.reloadLayout(); } else { - - layer.msg(res.msg, 'error'); + notice.error({ + message: res.msg, + }) // 登录超时 if (res.code === -101) { plugin.login(); @@ -111,7 +113,9 @@ layui.define(['i18n'], function (exports) { layer.closeAll(); plugin.againClick(); } else { - layer.msg(res.msg, 'error'); + notice.error({ + message: res.msg, + }) } }, 'json') @@ -185,7 +189,9 @@ layui.define(['i18n'], function (exports) { delete window.plugins[name]; $(elems).find('td:last').children('div').html(html); } else { - layer.msg(i18n.prop(res.msg), 'error'); + notice.error({ + message: res.msg, + }) } layer.close(window.unIndex); @@ -211,7 +217,7 @@ layui.define(['i18n'], function (exports) { html += '
              '; html += ''; html += '
              '; - html += ''; + html += ''; html += '
              '; html += '
              '; html += '
              '; @@ -270,7 +276,7 @@ layui.define(['i18n'], function (exports) { let name = plugin.getTableData(this)['name']; layui.sessionData('api_install_index', { key: 'index', - value: plugin.getTableData(this)['LAY_TABLE_INDEX'], + value: plugin.getTableData(this)['LAY_INDEX'], }); plugin.request(name, null, plugin.getUrl('Plugin', 'install')); }) @@ -291,7 +297,9 @@ layui.define(['i18n'], function (exports) { error: function (res) { $(obj.elem).prop('checked', !obj.elem.checked); form.render('checkbox'); - layer.msg(res.msg, 'error'); + notice.error({ + message: res.msg, + }) }, success: function (res) { layer.msg(res.msg); @@ -335,7 +343,7 @@ layui.define(['i18n'], function (exports) { html += '
              '; layui.sessionData('api_install_index', { key: 'index', - value: plugin.getTableData(this)['LAY_TABLE_INDEX'], + value: plugin.getTableData(this)['LAY_INDEX'], }); layer.open({ type: 1, @@ -388,7 +396,9 @@ layui.define(['i18n'], function (exports) { layer.msg(res.msg); layer.close(confirm); } else { - layer.msg(res.msg, 'error'); + notice.error({ + message: res.msg, + }) } }) }); diff --git a/public/static/system/module/treetable/treetable.css b/public/static/system/module/treetable/treetable.css deleted file mode 100644 index ff30de3..0000000 --- a/public/static/system/module/treetable/treetable.css +++ /dev/null @@ -1,22 +0,0 @@ -.treeTable-empty { - width: 20px; - display: inline-block; -} - -.treeTable-icon { - cursor: pointer; -} - -table .treeTable-icon i.layui-icon { - font-size: 14px; -} - -.treeTable-icon .layui-icon-right:before { - content: "\e602"; -} - -.treeTable-icon.open .layui-icon-right:before { - content: "\e61a"; - background-color: transparent; -} - diff --git a/public/static/system/module/treetable/treetable.js b/public/static/system/module/treetable/treetable.js deleted file mode 100644 index 7178616..0000000 --- a/public/static/system/module/treetable/treetable.js +++ /dev/null @@ -1,223 +0,0 @@ -layui.define(['layer', 'table'], function (exports) { - var $ = layui.jquery; - var layer = layui.layer; - var table = layui.table; - - var treetable = { - // 渲染树形表格 - render: function (param) { - // 检查参数 - if (!treetable.checkParam(param)) { - return; - } - // 获取数据 - if (param.data) { - treetable.init(param, param.data); - } else { - $.getJSON(param.url, param.where, function (res) { - treetable.init(param, res.data); - }); - } - }, - // 渲染表格 - init: function (param, data) { - - var mData = []; - var doneCallback = param.done; - if (typeof data.item !== 'undefined') { - for (let name in data) { - if (name != 'item') { - table.cache[name] = data[name]; - } - } - data = data.item; - } - var tNodes = data; - // 补上id和pid字段 - for (var i = 0; i < tNodes.length; i++) { - var tt = tNodes[i]; - if (!tt.id) { - if (!param.treeIdName) { - layer.msg('参数treeIdName不能为空', {icon: 5}); - return; - } - tt.id = tt[param.treeIdName]; - } - if (!tt.pid) { - if (!param.treePidName) { - layer.msg('参数treePidName不能为空', {icon: 5}); - return; - } - tt.pid = tt[param.treePidName]; - } - } - - // 对数据进行排序 - var sort = function (s_pid, data) { - for (var i = 0; i < data.length; i++) { // 排序 - if (data[i].pid == s_pid) { - var len = mData.length; - if (len > 0 && mData[len - 1].id == s_pid) { - mData[len - 1].isParent = true; // 是否为父类 - } - mData.push(data[i]); - sort(data[i].id, data); - } - } - }; - - sort(param.treeSpid, tNodes); // -1 - // 重写参数 - param.url = undefined; - param.data = mData; - param.page = { - count: param.data.length, - limit: param.data.length - }; - param.cols[0][param.treeColIndex].templet = function (d) { - var mId = d.id; - var mPid = d.pid; - var isDir = d.isParent; - var emptyNum = treetable.getEmptyNum(mPid, mData); - - var iconHtml = ''; - for (var i = 0; i < emptyNum; i++) { - iconHtml += ''; - } - - // 设置图标 - if (isDir) { - iconHtml += ''; - if (d.icons) { - iconHtml += '  '; - } - } else { - iconHtml += ''; - } - - iconHtml += ' '; - - var ttype = isDir ? 'dir' : 'file'; - var vg = ''; - return vg + iconHtml + d[param.cols[0][param.treeColIndex].field] + '' - }; - - param.done = function (res, curr, count) { - $(param.elem).next().addClass('treeTable'); - $('.treeTable .layui-table-page').css('display', 'none'); - $(param.elem).next().attr('treeLinkage', param.treeLinkage); - // 绑定事件换成对body绑定 - /*$('.treeTable .treeTable-icon').click(function () { - treetable.toggleRows($(this), param.treeLinkage); - });*/ - if (param.treeDefaultClose) { - treetable.foldAll(param.elem); - } - if (doneCallback) { - doneCallback(res, curr, count); - } - }; - - // 渲染表格 - table.render(param); - }, - // 计算缩进的数量 - getEmptyNum: function (pid, data) { - var num = 0; - if (!pid) { - return num; - } - var tPid; - for (var i = 0; i < data.length; i++) { - if (pid == data[i].id) { - num += 1; - tPid = data[i].pid; - break; - } - } - return num + treetable.getEmptyNum(tPid, data); - }, - // 展开/折叠行 - toggleRows: function ($dom, linkage) { - var type = $dom.attr('lay-ttype'); - if ('file' == type) { - return; - } - var mId = $dom.attr('lay-tid'); - var isOpen = $dom.hasClass('open'); - if (isOpen) { - $dom.removeClass('open'); - } else { - $dom.addClass('open'); - } - $dom.closest('tbody').find('tr').each(function () { - var $ti = $(this).find('.treeTable-icon'); - var pid = $ti.attr('lay-tpid'); - var ttype = $ti.attr('lay-ttype'); - var tOpen = $ti.hasClass('open'); - if (mId == pid) { - if (isOpen) { - $(this).hide(); - if ('dir' == ttype && tOpen == isOpen) { - $ti.trigger('click'); - } - } else { - $(this).show(); - if (linkage && 'dir' == ttype && tOpen == isOpen) { - $ti.trigger('click'); - } - } - } - }); - }, - // 检查参数 - checkParam: function (param) { - if (!param.treeSpid && param.treeSpid != 0) { - layer.msg('参数treeSpid不能为空'); - return false; - } - - if (!param.treeColIndex && param.treeColIndex != 0) { - layer.msg('参数treeColIndex不能为空'); - return false; - } - return true; - }, - // 展开所有 - expandAll: function (dom) { - $(dom).next('.treeTable').find('.layui-table-body tbody tr').each(function () { - var $ti = $(this).find('.treeTable-icon'); - var ttype = $ti.attr('lay-ttype'); - var tOpen = $ti.hasClass('open'); - if ('dir' == ttype && !tOpen) { - $ti.trigger('click'); - } - }); - }, - // 折叠所有 - foldAll: function (dom) { - $(dom).next('.treeTable').find('.layui-table-body tbody tr').each(function () { - var $ti = $(this).find('.treeTable-icon'); - var ttype = $ti.attr('lay-ttype'); - var tOpen = $ti.hasClass('open'); - if ('dir' == ttype && tOpen) { - $ti.trigger('click'); - } - }); - } - }; - - layui.link(layui.cache.base + 'treetable/treetable.css'); - - // 给图标列绑定事件 - $('body').on('click', '.treeTable .treeTable-icon', function () { - var treeLinkage = $(this).parents('.treeTable').attr('treeLinkage'); - if ('true' == treeLinkage) { - treetable.toggleRows($(this), true); - } else { - treetable.toggleRows($(this), false); - } - }); - - exports('treetable', treetable); -}); diff --git a/support/Request.php b/support/Request.php index 943b728..d751894 100644 --- a/support/Request.php +++ b/support/Request.php @@ -23,6 +23,16 @@ use system\Random; class Request extends \Webman\Http\Request { + /** + * @var int + */ + public int $userId = 0; + + /** + * @var array + */ + public array $userInfo = []; + /** * 生成请求令牌 * @access public diff --git a/support/Template.php b/support/Template.php index 88d3ccf..b3a8afc 100644 --- a/support/Template.php +++ b/support/Template.php @@ -29,8 +29,35 @@ class Template extends ThinkPHP */ public static function render(string $template, array $vars, string $app = null, string $plugin = null): string { - $content = parent::render($template, $vars, $app); - if (saenv('minify_page')) { + $request = request(); + $app = $app === null ? $request->app : $app; + $viewPath = app_path() . "/$app/view/"; + $defaultOptions = [ + 'view_path' => $viewPath, + 'cache_path' => runtime_path() . '/views/', + 'view_suffix' => 'html' + ]; + $options = $defaultOptions + config("view.options", []); + $options['taglib_pre_load'] = rtrim($options['taglib_pre_load'], ','); + foreach (get_plugin_list() as $index => $item) { + if (empty($item['status'])) { + continue; + } + $name = $item['name']; + $taglibPath = plugin_path($name . DIRECTORY_SEPARATOR . 'taglib'); + $tagList = glob($taglibPath . '*.php'); + foreach ($tagList as $key => $tag) { + $tag = pathinfo($tag, PATHINFO_FILENAME); + $options['taglib_pre_load'] .= ',plugin\\' . $name . '\\taglib\\' . $tag; + } + } + $views = new \think\Template($options); + ob_start(); + $vars = array_merge(static::$vars, $vars); + $views->fetch($template, $vars); + $content = ob_get_clean(); + static::$vars = []; + if (saenv('minify_page') && strtolower($app) == 'index') { $content = preg_replace('/\s+/i', ' ', $content); } return $content; diff --git a/support/helpers.php b/support/helpers.php index a2708d5..bc1094d 100644 --- a/support/helpers.php +++ b/support/helpers.php @@ -13,6 +13,7 @@ * @license http://www.opensource.org/licenses/mit-license.php MIT License */ +use app\common\exception\DumpException; use support\Container; use support\Request; use support\Response; @@ -113,19 +114,25 @@ if (!function_exists('halt')) { /** * 调试变量并且中断输出 * @param mixed $vars 调试变量或者信息 + * @throws DumpException + * @return void */ - function halt(...$vars) + function halt(...$vars): void { - ob_start(); - $cloner = new VarCloner(); - $cloner->addCasters(ReflectionCaster::UNSET_CLOSURE_FILE_INFO); - $dumper = new HtmlDumper(); - $dumper = new ContextualizedDumper($dumper, [new SourceContextProvider()]); - foreach ($vars as $var) { - $dumper->dump($cloner->cloneVar($var)); + try { + ob_start(); + $cloner = new VarCloner(); + $cloner->addCasters(ReflectionCaster::UNSET_CLOSURE_FILE_INFO); + $dumper = new HtmlDumper(); + $dumper = new ContextualizedDumper($dumper, [new SourceContextProvider()]); + foreach ($vars as $var) { + $dumper->dump($cloner->cloneVar($var)); + } + $ob_response = (string)ob_get_clean(); + } catch (\Throwable $e) { + $ob_response = $e->getMessage(); } - $ob_response = (string)ob_get_clean(); - throw new \RuntimeException($ob_response, 600); + throw new DumpException($ob_response, 600); } } diff --git a/vendor/composer/autoload_classmap.php b/vendor/composer/autoload_classmap.php index cae0fc2..5f55d67 100644 --- a/vendor/composer/autoload_classmap.php +++ b/vendor/composer/autoload_classmap.php @@ -8,9 +8,10 @@ $baseDir = dirname($vendorDir); return array( 'Attribute' => $vendorDir . '/symfony/polyfill-php80/Resources/stubs/Attribute.php', 'Composer\\InstalledVersions' => $vendorDir . '/composer/InstalledVersions.php', + 'JsonException' => $vendorDir . '/symfony/polyfill-php73/Resources/stubs/JsonException.php', 'Normalizer' => $vendorDir . '/symfony/polyfill-intl-normalizer/Resources/stubs/Normalizer.php', 'PhpToken' => $vendorDir . '/symfony/polyfill-php80/Resources/stubs/PhpToken.php', - 'Stringable' => $vendorDir . '/symfony/polyfill-php80/Resources/stubs/Stringable.php', + 'Stringable' => $vendorDir . '/myclabs/php-enum/stubs/Stringable.php', 'UnhandledMatchError' => $vendorDir . '/symfony/polyfill-php80/Resources/stubs/UnhandledMatchError.php', 'ValueError' => $vendorDir . '/symfony/polyfill-php80/Resources/stubs/ValueError.php', ); diff --git a/vendor/composer/autoload_files.php b/vendor/composer/autoload_files.php index 9c60ded..67a815c 100644 --- a/vendor/composer/autoload_files.php +++ b/vendor/composer/autoload_files.php @@ -7,23 +7,25 @@ $baseDir = dirname($vendorDir); return array( '0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => $vendorDir . '/symfony/polyfill-mbstring/bootstrap.php', - '9b552a3cc426e3287cc811caefa3cf53' => $vendorDir . '/topthink/think-helper/src/helper.php', '6e3fae29631ef280660b3cdad06f25a8' => $vendorDir . '/symfony/deprecation-contracts/function.php', + 'a4a119a56e50fbb293281d9a48007e0e' => $vendorDir . '/symfony/polyfill-php80/bootstrap.php', + '9b552a3cc426e3287cc811caefa3cf53' => $vendorDir . '/topthink/think-helper/src/helper.php', + '60799491728b879e74601d83e38b2cad' => $vendorDir . '/illuminate/collections/helpers.php', '320cde22f66dd4f5d3fd621d3e88b98f' => $vendorDir . '/symfony/polyfill-ctype/bootstrap.php', '8825ede83f2f289127722d4e842cf7e8' => $vendorDir . '/symfony/polyfill-intl-grapheme/bootstrap.php', 'e69f7f6ee287b969198c3c9d6777bd38' => $vendorDir . '/symfony/polyfill-intl-normalizer/bootstrap.php', + 'a1105708a18b76903365ca1c4aa61b02' => $vendorDir . '/symfony/translation/Resources/functions.php', '253c157292f75eb38082b5acb06f3f01' => $vendorDir . '/nikic/fast-route/src/functions.php', - '538ca81a9a966a6716601ecf48f4eaef' => $vendorDir . '/opis/closure/functions.php', '7b11c4dc42b3b3023073cb14e519683c' => $vendorDir . '/ralouphie/getallheaders/src/getallheaders.php', 'b6b991a57620e2fb6b2f66f03fe9ddc2' => $vendorDir . '/symfony/string/Resources/functions.php', '2cffec82183ee1cea088009cef9a6fc3' => $vendorDir . '/ezyang/htmlpurifier/library/HTMLPurifier.composer.php', 'c964ee0ededf28c96ebd9db5099ef910' => $vendorDir . '/guzzlehttp/promises/src/functions_include.php', - 'a4a119a56e50fbb293281d9a48007e0e' => $vendorDir . '/symfony/polyfill-php80/bootstrap.php', + '72579e7bd17821bb1321b87411366eae' => $vendorDir . '/illuminate/support/helpers.php', + '0d59ee240a4cd96ddbb4ff164fccea4d' => $vendorDir . '/symfony/polyfill-php73/bootstrap.php', '35fab96057f1bf5e7aba31a8a6d5fdde' => $vendorDir . '/topthink/think-orm/stubs/load_stubs.php', '6b998e7ad3182c0d21d23780badfa07b' => $vendorDir . '/yansongda/supports/src/Functions.php', '37a3dc5111fe8f707ab4c132ef1dbc62' => $vendorDir . '/guzzlehttp/guzzle/src/functions_include.php', 'b33e3d135e5d9e47d845c576147bda89' => $vendorDir . '/php-di/php-di/src/functions.php', - 'a1105708a18b76903365ca1c4aa61b02' => $vendorDir . '/symfony/translation/Resources/functions.php', '667aeda72477189d0494fecd327c3641' => $vendorDir . '/symfony/var-dumper/Resources/functions/dump.php', '8c783b3a3de2f6d9177022b5ccdcc841' => $vendorDir . '/yansongda/pay/src/Functions.php', 'fe146f35de045d8ffe923710b1f98ecc' => $baseDir . '/support/helpers.php', diff --git a/vendor/composer/autoload_psr4.php b/vendor/composer/autoload_psr4.php index 9b7a66a..a3251c7 100644 --- a/vendor/composer/autoload_psr4.php +++ b/vendor/composer/autoload_psr4.php @@ -6,7 +6,8 @@ $vendorDir = dirname(__DIR__); $baseDir = dirname($vendorDir); return array( - 'think\\' => array($vendorDir . '/topthink/think-cache/src', $vendorDir . '/topthink/think-container/src', $vendorDir . '/topthink/think-helper/src', $vendorDir . '/topthink/think-image/src', $vendorDir . '/topthink/think-orm/src', $vendorDir . '/topthink/think-template/src', $vendorDir . '/topthink/think-validate/src'), + 'voku\\' => array($vendorDir . '/voku/portable-ascii/src/voku'), + 'think\\' => array($vendorDir . '/topthink/think-container/src', $vendorDir . '/topthink/think-helper/src', $vendorDir . '/topthink/think-image/src', $vendorDir . '/topthink/think-orm/src', $vendorDir . '/topthink/think-template/src', $vendorDir . '/topthink/think-validate/src'), 'support\\' => array($vendorDir . '/workerman/webman-framework/src/support'), 'app\\' => array($baseDir . '/app'), 'ZipStream\\' => array($vendorDir . '/maennchen/zipstream-php/src'), @@ -16,7 +17,6 @@ return array( 'Workerman\\RedisQueue\\' => array($vendorDir . '/workerman/redis-queue/src'), 'Workerman\\' => array($vendorDir . '/workerman/workerman'), 'Webman\\ThinkOrm\\' => array($vendorDir . '/webman/think-orm/src'), - 'Webman\\ThinkCache\\' => array($vendorDir . '/webman/think-cache/src'), 'Webman\\RedisQueue\\' => array($vendorDir . '/webman/redis-queue/src'), 'Webman\\GatewayWorker\\' => array($vendorDir . '/webman/gateway-worker/src'), 'Webman\\Event\\' => array($vendorDir . '/webman/event/src'), @@ -24,16 +24,20 @@ return array( 'Webman\\Captcha\\' => array($vendorDir . '/webman/captcha/src'), 'Webman\\' => array($vendorDir . '/workerman/webman-framework/src'), 'Symfony\\Polyfill\\Php80\\' => array($vendorDir . '/symfony/polyfill-php80'), + 'Symfony\\Polyfill\\Php73\\' => array($vendorDir . '/symfony/polyfill-php73'), 'Symfony\\Polyfill\\Mbstring\\' => array($vendorDir . '/symfony/polyfill-mbstring'), 'Symfony\\Polyfill\\Intl\\Normalizer\\' => array($vendorDir . '/symfony/polyfill-intl-normalizer'), 'Symfony\\Polyfill\\Intl\\Grapheme\\' => array($vendorDir . '/symfony/polyfill-intl-grapheme'), 'Symfony\\Polyfill\\Ctype\\' => array($vendorDir . '/symfony/polyfill-ctype'), 'Symfony\\Contracts\\Translation\\' => array($vendorDir . '/symfony/translation-contracts'), 'Symfony\\Contracts\\Service\\' => array($vendorDir . '/symfony/service-contracts'), + 'Symfony\\Contracts\\Cache\\' => array($vendorDir . '/symfony/cache-contracts'), + 'Symfony\\Component\\VarExporter\\' => array($vendorDir . '/symfony/var-exporter'), 'Symfony\\Component\\VarDumper\\' => array($vendorDir . '/symfony/var-dumper'), 'Symfony\\Component\\Translation\\' => array($vendorDir . '/symfony/translation'), 'Symfony\\Component\\String\\' => array($vendorDir . '/symfony/string'), 'Symfony\\Component\\Console\\' => array($vendorDir . '/symfony/console'), + 'Symfony\\Component\\Cache\\' => array($vendorDir . '/symfony/cache'), 'Support\\View\\' => array($vendorDir . '/workerman/webman-framework/src/support/view'), 'Support\\Exception\\' => array($vendorDir . '/workerman/webman-framework/src/support/exception'), 'Support\\Bootstrap\\' => array($vendorDir . '/workerman/webman-framework/src/support/bootstrap'), @@ -49,12 +53,14 @@ return array( 'PhpDocReader\\' => array($vendorDir . '/php-di/phpdoc-reader/src/PhpDocReader'), 'PHPMailer\\PHPMailer\\' => array($vendorDir . '/phpmailer/phpmailer/src'), 'Overtrue\\Pinyin\\' => array($vendorDir . '/overtrue/pinyin/src'), - 'Opis\\Closure\\' => array($vendorDir . '/opis/closure/src'), 'MyCLabs\\Enum\\' => array($vendorDir . '/myclabs/php-enum/src'), 'Monolog\\' => array($vendorDir . '/monolog/monolog/src/Monolog'), 'Matrix\\' => array($vendorDir . '/markbaker/matrix/classes/src'), 'Laravel\\SerializableClosure\\' => array($vendorDir . '/laravel/serializable-closure/src'), 'Invoker\\' => array($vendorDir . '/php-di/invoker/src'), + 'Illuminate\\Support\\' => array($vendorDir . '/illuminate/collections', $vendorDir . '/illuminate/conditionable', $vendorDir . '/illuminate/macroable', $vendorDir . '/illuminate/support'), + 'Illuminate\\Redis\\' => array($vendorDir . '/illuminate/redis'), + 'Illuminate\\Contracts\\' => array($vendorDir . '/illuminate/contracts'), 'GuzzleHttp\\Psr7\\' => array($vendorDir . '/guzzlehttp/psr7/src'), 'GuzzleHttp\\Promise\\' => array($vendorDir . '/guzzlehttp/promises/src'), 'GuzzleHttp\\' => array($vendorDir . '/guzzlehttp/guzzle/src'), @@ -65,6 +71,7 @@ return array( 'DI\\' => array($vendorDir . '/php-di/php-di/src'), 'DASPRiD\\Enum\\' => array($vendorDir . '/dasprid/enum/src'), 'Complex\\' => array($vendorDir . '/markbaker/complex/classes/src'), + 'Carbon\\' => array($vendorDir . '/nesbot/carbon/src/Carbon'), 'BaconQrCode\\' => array($vendorDir . '/bacon/bacon-qr-code/src'), '' => array($baseDir . '/'), ); diff --git a/vendor/composer/autoload_static.php b/vendor/composer/autoload_static.php index c11b0a7..cd038de 100644 --- a/vendor/composer/autoload_static.php +++ b/vendor/composer/autoload_static.php @@ -8,29 +8,35 @@ class ComposerStaticInitfa49c619328634587e27f2ef69b215b7 { public static $files = array ( '0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => __DIR__ . '/..' . '/symfony/polyfill-mbstring/bootstrap.php', - '9b552a3cc426e3287cc811caefa3cf53' => __DIR__ . '/..' . '/topthink/think-helper/src/helper.php', '6e3fae29631ef280660b3cdad06f25a8' => __DIR__ . '/..' . '/symfony/deprecation-contracts/function.php', + 'a4a119a56e50fbb293281d9a48007e0e' => __DIR__ . '/..' . '/symfony/polyfill-php80/bootstrap.php', + '9b552a3cc426e3287cc811caefa3cf53' => __DIR__ . '/..' . '/topthink/think-helper/src/helper.php', + '60799491728b879e74601d83e38b2cad' => __DIR__ . '/..' . '/illuminate/collections/helpers.php', '320cde22f66dd4f5d3fd621d3e88b98f' => __DIR__ . '/..' . '/symfony/polyfill-ctype/bootstrap.php', '8825ede83f2f289127722d4e842cf7e8' => __DIR__ . '/..' . '/symfony/polyfill-intl-grapheme/bootstrap.php', 'e69f7f6ee287b969198c3c9d6777bd38' => __DIR__ . '/..' . '/symfony/polyfill-intl-normalizer/bootstrap.php', + 'a1105708a18b76903365ca1c4aa61b02' => __DIR__ . '/..' . '/symfony/translation/Resources/functions.php', '253c157292f75eb38082b5acb06f3f01' => __DIR__ . '/..' . '/nikic/fast-route/src/functions.php', - '538ca81a9a966a6716601ecf48f4eaef' => __DIR__ . '/..' . '/opis/closure/functions.php', '7b11c4dc42b3b3023073cb14e519683c' => __DIR__ . '/..' . '/ralouphie/getallheaders/src/getallheaders.php', 'b6b991a57620e2fb6b2f66f03fe9ddc2' => __DIR__ . '/..' . '/symfony/string/Resources/functions.php', '2cffec82183ee1cea088009cef9a6fc3' => __DIR__ . '/..' . '/ezyang/htmlpurifier/library/HTMLPurifier.composer.php', 'c964ee0ededf28c96ebd9db5099ef910' => __DIR__ . '/..' . '/guzzlehttp/promises/src/functions_include.php', - 'a4a119a56e50fbb293281d9a48007e0e' => __DIR__ . '/..' . '/symfony/polyfill-php80/bootstrap.php', + '72579e7bd17821bb1321b87411366eae' => __DIR__ . '/..' . '/illuminate/support/helpers.php', + '0d59ee240a4cd96ddbb4ff164fccea4d' => __DIR__ . '/..' . '/symfony/polyfill-php73/bootstrap.php', '35fab96057f1bf5e7aba31a8a6d5fdde' => __DIR__ . '/..' . '/topthink/think-orm/stubs/load_stubs.php', '6b998e7ad3182c0d21d23780badfa07b' => __DIR__ . '/..' . '/yansongda/supports/src/Functions.php', '37a3dc5111fe8f707ab4c132ef1dbc62' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/functions_include.php', 'b33e3d135e5d9e47d845c576147bda89' => __DIR__ . '/..' . '/php-di/php-di/src/functions.php', - 'a1105708a18b76903365ca1c4aa61b02' => __DIR__ . '/..' . '/symfony/translation/Resources/functions.php', '667aeda72477189d0494fecd327c3641' => __DIR__ . '/..' . '/symfony/var-dumper/Resources/functions/dump.php', '8c783b3a3de2f6d9177022b5ccdcc841' => __DIR__ . '/..' . '/yansongda/pay/src/Functions.php', 'fe146f35de045d8ffe923710b1f98ecc' => __DIR__ . '/../..' . '/support/helpers.php', ); public static $prefixLengthsPsr4 = array ( + 'v' => + array ( + 'voku\\' => 5, + ), 't' => array ( 'think\\' => 6, @@ -58,7 +64,6 @@ class ComposerStaticInitfa49c619328634587e27f2ef69b215b7 'Workerman\\RedisQueue\\' => 21, 'Workerman\\' => 10, 'Webman\\ThinkOrm\\' => 16, - 'Webman\\ThinkCache\\' => 18, 'Webman\\RedisQueue\\' => 18, 'Webman\\GatewayWorker\\' => 21, 'Webman\\Event\\' => 13, @@ -69,16 +74,20 @@ class ComposerStaticInitfa49c619328634587e27f2ef69b215b7 'S' => array ( 'Symfony\\Polyfill\\Php80\\' => 23, + 'Symfony\\Polyfill\\Php73\\' => 23, 'Symfony\\Polyfill\\Mbstring\\' => 26, 'Symfony\\Polyfill\\Intl\\Normalizer\\' => 33, 'Symfony\\Polyfill\\Intl\\Grapheme\\' => 31, 'Symfony\\Polyfill\\Ctype\\' => 23, 'Symfony\\Contracts\\Translation\\' => 30, 'Symfony\\Contracts\\Service\\' => 26, + 'Symfony\\Contracts\\Cache\\' => 24, + 'Symfony\\Component\\VarExporter\\' => 30, 'Symfony\\Component\\VarDumper\\' => 28, 'Symfony\\Component\\Translation\\' => 30, 'Symfony\\Component\\String\\' => 25, 'Symfony\\Component\\Console\\' => 26, + 'Symfony\\Component\\Cache\\' => 24, 'Support\\View\\' => 13, 'Support\\Exception\\' => 18, 'Support\\Bootstrap\\' => 18, @@ -100,7 +109,6 @@ class ComposerStaticInitfa49c619328634587e27f2ef69b215b7 'O' => array ( 'Overtrue\\Pinyin\\' => 16, - 'Opis\\Closure\\' => 13, ), 'M' => array ( @@ -115,6 +123,9 @@ class ComposerStaticInitfa49c619328634587e27f2ef69b215b7 'I' => array ( 'Invoker\\' => 8, + 'Illuminate\\Support\\' => 19, + 'Illuminate\\Redis\\' => 17, + 'Illuminate\\Contracts\\' => 21, ), 'G' => array ( @@ -140,6 +151,7 @@ class ComposerStaticInitfa49c619328634587e27f2ef69b215b7 'C' => array ( 'Complex\\' => 8, + 'Carbon\\' => 7, ), 'B' => array ( @@ -148,15 +160,18 @@ class ComposerStaticInitfa49c619328634587e27f2ef69b215b7 ); public static $prefixDirsPsr4 = array ( + 'voku\\' => + array ( + 0 => __DIR__ . '/..' . '/voku/portable-ascii/src/voku', + ), 'think\\' => array ( - 0 => __DIR__ . '/..' . '/topthink/think-cache/src', - 1 => __DIR__ . '/..' . '/topthink/think-container/src', - 2 => __DIR__ . '/..' . '/topthink/think-helper/src', - 3 => __DIR__ . '/..' . '/topthink/think-image/src', - 4 => __DIR__ . '/..' . '/topthink/think-orm/src', - 5 => __DIR__ . '/..' . '/topthink/think-template/src', - 6 => __DIR__ . '/..' . '/topthink/think-validate/src', + 0 => __DIR__ . '/..' . '/topthink/think-container/src', + 1 => __DIR__ . '/..' . '/topthink/think-helper/src', + 2 => __DIR__ . '/..' . '/topthink/think-image/src', + 3 => __DIR__ . '/..' . '/topthink/think-orm/src', + 4 => __DIR__ . '/..' . '/topthink/think-template/src', + 5 => __DIR__ . '/..' . '/topthink/think-validate/src', ), 'support\\' => array ( @@ -194,10 +209,6 @@ class ComposerStaticInitfa49c619328634587e27f2ef69b215b7 array ( 0 => __DIR__ . '/..' . '/webman/think-orm/src', ), - 'Webman\\ThinkCache\\' => - array ( - 0 => __DIR__ . '/..' . '/webman/think-cache/src', - ), 'Webman\\RedisQueue\\' => array ( 0 => __DIR__ . '/..' . '/webman/redis-queue/src', @@ -226,6 +237,10 @@ class ComposerStaticInitfa49c619328634587e27f2ef69b215b7 array ( 0 => __DIR__ . '/..' . '/symfony/polyfill-php80', ), + 'Symfony\\Polyfill\\Php73\\' => + array ( + 0 => __DIR__ . '/..' . '/symfony/polyfill-php73', + ), 'Symfony\\Polyfill\\Mbstring\\' => array ( 0 => __DIR__ . '/..' . '/symfony/polyfill-mbstring', @@ -250,6 +265,14 @@ class ComposerStaticInitfa49c619328634587e27f2ef69b215b7 array ( 0 => __DIR__ . '/..' . '/symfony/service-contracts', ), + 'Symfony\\Contracts\\Cache\\' => + array ( + 0 => __DIR__ . '/..' . '/symfony/cache-contracts', + ), + 'Symfony\\Component\\VarExporter\\' => + array ( + 0 => __DIR__ . '/..' . '/symfony/var-exporter', + ), 'Symfony\\Component\\VarDumper\\' => array ( 0 => __DIR__ . '/..' . '/symfony/var-dumper', @@ -266,6 +289,10 @@ class ComposerStaticInitfa49c619328634587e27f2ef69b215b7 array ( 0 => __DIR__ . '/..' . '/symfony/console', ), + 'Symfony\\Component\\Cache\\' => + array ( + 0 => __DIR__ . '/..' . '/symfony/cache', + ), 'Support\\View\\' => array ( 0 => __DIR__ . '/..' . '/workerman/webman-framework/src/support/view', @@ -327,10 +354,6 @@ class ComposerStaticInitfa49c619328634587e27f2ef69b215b7 array ( 0 => __DIR__ . '/..' . '/overtrue/pinyin/src', ), - 'Opis\\Closure\\' => - array ( - 0 => __DIR__ . '/..' . '/opis/closure/src', - ), 'MyCLabs\\Enum\\' => array ( 0 => __DIR__ . '/..' . '/myclabs/php-enum/src', @@ -351,6 +374,21 @@ class ComposerStaticInitfa49c619328634587e27f2ef69b215b7 array ( 0 => __DIR__ . '/..' . '/php-di/invoker/src', ), + 'Illuminate\\Support\\' => + array ( + 0 => __DIR__ . '/..' . '/illuminate/collections', + 1 => __DIR__ . '/..' . '/illuminate/conditionable', + 2 => __DIR__ . '/..' . '/illuminate/macroable', + 3 => __DIR__ . '/..' . '/illuminate/support', + ), + 'Illuminate\\Redis\\' => + array ( + 0 => __DIR__ . '/..' . '/illuminate/redis', + ), + 'Illuminate\\Contracts\\' => + array ( + 0 => __DIR__ . '/..' . '/illuminate/contracts', + ), 'GuzzleHttp\\Psr7\\' => array ( 0 => __DIR__ . '/..' . '/guzzlehttp/psr7/src', @@ -391,6 +429,10 @@ class ComposerStaticInitfa49c619328634587e27f2ef69b215b7 array ( 0 => __DIR__ . '/..' . '/markbaker/complex/classes/src', ), + 'Carbon\\' => + array ( + 0 => __DIR__ . '/..' . '/nesbot/carbon/src/Carbon', + ), 'BaconQrCode\\' => array ( 0 => __DIR__ . '/..' . '/bacon/bacon-qr-code/src', @@ -418,9 +460,10 @@ class ComposerStaticInitfa49c619328634587e27f2ef69b215b7 public static $classMap = array ( 'Attribute' => __DIR__ . '/..' . '/symfony/polyfill-php80/Resources/stubs/Attribute.php', 'Composer\\InstalledVersions' => __DIR__ . '/..' . '/composer/InstalledVersions.php', + 'JsonException' => __DIR__ . '/..' . '/symfony/polyfill-php73/Resources/stubs/JsonException.php', 'Normalizer' => __DIR__ . '/..' . '/symfony/polyfill-intl-normalizer/Resources/stubs/Normalizer.php', 'PhpToken' => __DIR__ . '/..' . '/symfony/polyfill-php80/Resources/stubs/PhpToken.php', - 'Stringable' => __DIR__ . '/..' . '/symfony/polyfill-php80/Resources/stubs/Stringable.php', + 'Stringable' => __DIR__ . '/..' . '/myclabs/php-enum/stubs/Stringable.php', 'UnhandledMatchError' => __DIR__ . '/..' . '/symfony/polyfill-php80/Resources/stubs/UnhandledMatchError.php', 'ValueError' => __DIR__ . '/..' . '/symfony/polyfill-php80/Resources/stubs/ValueError.php', ); diff --git a/vendor/composer/installed.json b/vendor/composer/installed.json index a6a4f28..0e092ba 100644 --- a/vendor/composer/installed.json +++ b/vendor/composer/installed.json @@ -683,6 +683,344 @@ ], "install-path": "../guzzlehttp/psr7" }, + { + "name": "illuminate/collections", + "version": "v9.52.9", + "version_normalized": "9.52.9.0", + "source": { + "type": "git", + "url": "https://github.com/illuminate/collections.git", + "reference": "0168d0e44ea0c4fe5451fe08cde7049b9e9f9741" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/illuminate/collections/zipball/0168d0e44ea0c4fe5451fe08cde7049b9e9f9741", + "reference": "0168d0e44ea0c4fe5451fe08cde7049b9e9f9741", + "shasum": "" + }, + "require": { + "illuminate/conditionable": "^9.0", + "illuminate/contracts": "^9.0", + "illuminate/macroable": "^9.0", + "php": "^8.0.2" + }, + "suggest": { + "symfony/var-dumper": "Required to use the dump method (^6.0)." + }, + "time": "2023-02-22T11:32:27+00:00", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "9.x-dev" + } + }, + "installation-source": "dist", + "autoload": { + "files": [ + "helpers.php" + ], + "psr-4": { + "Illuminate\\Support\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Taylor Otwell", + "email": "taylor@laravel.com" + } + ], + "description": "The Illuminate Collections package.", + "homepage": "https://laravel.com", + "support": { + "issues": "https://github.com/laravel/framework/issues", + "source": "https://github.com/laravel/framework" + }, + "install-path": "../illuminate/collections" + }, + { + "name": "illuminate/conditionable", + "version": "v9.52.9", + "version_normalized": "9.52.9.0", + "source": { + "type": "git", + "url": "https://github.com/illuminate/conditionable.git", + "reference": "bea24daa0fa84b7e7b0d5b84f62c71b7e2dc3364" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/illuminate/conditionable/zipball/bea24daa0fa84b7e7b0d5b84f62c71b7e2dc3364", + "reference": "bea24daa0fa84b7e7b0d5b84f62c71b7e2dc3364", + "shasum": "" + }, + "require": { + "php": "^8.0.2" + }, + "time": "2023-02-01T21:42:32+00:00", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "9.x-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "Illuminate\\Support\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Taylor Otwell", + "email": "taylor@laravel.com" + } + ], + "description": "The Illuminate Conditionable package.", + "homepage": "https://laravel.com", + "support": { + "issues": "https://github.com/laravel/framework/issues", + "source": "https://github.com/laravel/framework" + }, + "install-path": "../illuminate/conditionable" + }, + { + "name": "illuminate/contracts", + "version": "v9.52.9", + "version_normalized": "9.52.9.0", + "source": { + "type": "git", + "url": "https://github.com/illuminate/contracts.git", + "reference": "44f65d723b13823baa02ff69751a5948bde60c22" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/illuminate/contracts/zipball/44f65d723b13823baa02ff69751a5948bde60c22", + "reference": "44f65d723b13823baa02ff69751a5948bde60c22", + "shasum": "" + }, + "require": { + "php": "^8.0.2", + "psr/container": "^1.1.1|^2.0.1", + "psr/simple-cache": "^1.0|^2.0|^3.0" + }, + "time": "2023-02-08T14:36:30+00:00", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "9.x-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "Illuminate\\Contracts\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Taylor Otwell", + "email": "taylor@laravel.com" + } + ], + "description": "The Illuminate Contracts package.", + "homepage": "https://laravel.com", + "support": { + "issues": "https://github.com/laravel/framework/issues", + "source": "https://github.com/laravel/framework" + }, + "install-path": "../illuminate/contracts" + }, + { + "name": "illuminate/macroable", + "version": "v9.52.9", + "version_normalized": "9.52.9.0", + "source": { + "type": "git", + "url": "https://github.com/illuminate/macroable.git", + "reference": "e3bfaf6401742a9c6abca61b9b10e998e5b6449a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/illuminate/macroable/zipball/e3bfaf6401742a9c6abca61b9b10e998e5b6449a", + "reference": "e3bfaf6401742a9c6abca61b9b10e998e5b6449a", + "shasum": "" + }, + "require": { + "php": "^8.0.2" + }, + "time": "2022-08-09T13:29:29+00:00", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "9.x-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "Illuminate\\Support\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Taylor Otwell", + "email": "taylor@laravel.com" + } + ], + "description": "The Illuminate Macroable package.", + "homepage": "https://laravel.com", + "support": { + "issues": "https://github.com/laravel/framework/issues", + "source": "https://github.com/laravel/framework" + }, + "install-path": "../illuminate/macroable" + }, + { + "name": "illuminate/redis", + "version": "v9.52.9", + "version_normalized": "9.52.9.0", + "source": { + "type": "git", + "url": "https://github.com/illuminate/redis.git", + "reference": "856adc664a35dfcb8c59f8adbc97d5fbd250f9c2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/illuminate/redis/zipball/856adc664a35dfcb8c59f8adbc97d5fbd250f9c2", + "reference": "856adc664a35dfcb8c59f8adbc97d5fbd250f9c2", + "shasum": "" + }, + "require": { + "illuminate/collections": "^9.0", + "illuminate/contracts": "^9.0", + "illuminate/macroable": "^9.0", + "illuminate/support": "^9.0", + "php": "^8.0.2" + }, + "suggest": { + "ext-redis": "Required to use the phpredis connector (^4.0|^5.0).", + "predis/predis": "Required to use the predis connector (^1.1.9|^2.0.2)." + }, + "time": "2023-01-22T17:38:17+00:00", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "9.x-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "Illuminate\\Redis\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Taylor Otwell", + "email": "taylor@laravel.com" + } + ], + "description": "The Illuminate Redis package.", + "homepage": "https://laravel.com", + "support": { + "issues": "https://github.com/laravel/framework/issues", + "source": "https://github.com/laravel/framework" + }, + "install-path": "../illuminate/redis" + }, + { + "name": "illuminate/support", + "version": "v9.52.9", + "version_normalized": "9.52.9.0", + "source": { + "type": "git", + "url": "https://github.com/illuminate/support.git", + "reference": "3fc1d9deb1dc8c256c3394e1547dccdd386bb2f5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/illuminate/support/zipball/3fc1d9deb1dc8c256c3394e1547dccdd386bb2f5", + "reference": "3fc1d9deb1dc8c256c3394e1547dccdd386bb2f5", + "shasum": "" + }, + "require": { + "doctrine/inflector": "^2.0", + "ext-ctype": "*", + "ext-filter": "*", + "ext-mbstring": "*", + "illuminate/collections": "^9.0", + "illuminate/conditionable": "^9.0", + "illuminate/contracts": "^9.0", + "illuminate/macroable": "^9.0", + "nesbot/carbon": "^2.62.1", + "php": "^8.0.2", + "voku/portable-ascii": "^2.0" + }, + "conflict": { + "tightenco/collect": "<5.5.33" + }, + "suggest": { + "illuminate/filesystem": "Required to use the composer class (^9.0).", + "league/commonmark": "Required to use Str::markdown() and Stringable::markdown() (^2.0.2).", + "ramsey/uuid": "Required to use Str::uuid() (^4.7).", + "symfony/process": "Required to use the composer class (^6.0).", + "symfony/uid": "Required to use Str::ulid() (^6.0).", + "symfony/var-dumper": "Required to use the dd function (^6.0).", + "vlucas/phpdotenv": "Required to use the Env class and env helper (^5.4.1)." + }, + "time": "2023-06-01T16:10:43+00:00", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "9.x-dev" + } + }, + "installation-source": "dist", + "autoload": { + "files": [ + "helpers.php" + ], + "psr-4": { + "Illuminate\\Support\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Taylor Otwell", + "email": "taylor@laravel.com" + } + ], + "description": "The Illuminate Support package.", + "homepage": "https://laravel.com", + "support": { + "issues": "https://github.com/laravel/framework/issues", + "source": "https://github.com/laravel/framework" + }, + "install-path": "../illuminate/support" + }, { "name": "laravel/serializable-closure", "version": "v1.3.0", @@ -1111,6 +1449,111 @@ ], "install-path": "../myclabs/php-enum" }, + { + "name": "nesbot/carbon", + "version": "2.67.0", + "version_normalized": "2.67.0.0", + "source": { + "type": "git", + "url": "https://github.com/briannesbitt/Carbon.git", + "reference": "c1001b3bc75039b07f38a79db5237c4c529e04c8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/c1001b3bc75039b07f38a79db5237c4c529e04c8", + "reference": "c1001b3bc75039b07f38a79db5237c4c529e04c8", + "shasum": "" + }, + "require": { + "ext-json": "*", + "php": "^7.1.8 || ^8.0", + "symfony/polyfill-mbstring": "^1.0", + "symfony/polyfill-php80": "^1.16", + "symfony/translation": "^3.4 || ^4.0 || ^5.0 || ^6.0" + }, + "require-dev": { + "doctrine/dbal": "^2.0 || ^3.1.4", + "doctrine/orm": "^2.7", + "friendsofphp/php-cs-fixer": "^3.0", + "kylekatarnls/multi-tester": "^2.0", + "ondrejmirtes/better-reflection": "*", + "phpmd/phpmd": "^2.9", + "phpstan/extension-installer": "^1.0", + "phpstan/phpstan": "^0.12.99 || ^1.7.14", + "phpunit/php-file-iterator": "^2.0.5 || ^3.0.6", + "phpunit/phpunit": "^7.5.20 || ^8.5.26 || ^9.5.20", + "squizlabs/php_codesniffer": "^3.4" + }, + "time": "2023-05-25T22:09:47+00:00", + "bin": [ + "bin/carbon" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-3.x": "3.x-dev", + "dev-master": "2.x-dev" + }, + "laravel": { + "providers": [ + "Carbon\\Laravel\\ServiceProvider" + ] + }, + "phpstan": { + "includes": [ + "extension.neon" + ] + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "Carbon\\": "src/Carbon/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Brian Nesbitt", + "email": "brian@nesbot.com", + "homepage": "https://markido.com" + }, + { + "name": "kylekatarnls", + "homepage": "https://github.com/kylekatarnls" + } + ], + "description": "An API extension for DateTime that supports 281 different languages.", + "homepage": "https://carbon.nesbot.com", + "keywords": [ + "date", + "datetime", + "time" + ], + "support": { + "docs": "https://carbon.nesbot.com/docs", + "issues": "https://github.com/briannesbitt/Carbon/issues", + "source": "https://github.com/briannesbitt/Carbon" + }, + "funding": [ + { + "url": "https://github.com/sponsors/kylekatarnls", + "type": "github" + }, + { + "url": "https://opencollective.com/Carbon#sponsor", + "type": "opencollective" + }, + { + "url": "https://tidelift.com/subscription/pkg/packagist-nesbot-carbon?utm_source=packagist-nesbot-carbon&utm_medium=referral&utm_campaign=readme", + "type": "tidelift" + } + ], + "install-path": "../nesbot/carbon" + }, { "name": "nikic/fast-route", "version": "v1.3.0", @@ -1164,74 +1607,6 @@ }, "install-path": "../nikic/fast-route" }, - { - "name": "opis/closure", - "version": "3.6.3", - "version_normalized": "3.6.3.0", - "source": { - "type": "git", - "url": "https://github.com/opis/closure.git", - "reference": "3d81e4309d2a927abbe66df935f4bb60082805ad" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/opis/closure/zipball/3d81e4309d2a927abbe66df935f4bb60082805ad", - "reference": "3d81e4309d2a927abbe66df935f4bb60082805ad", - "shasum": "" - }, - "require": { - "php": "^5.4 || ^7.0 || ^8.0" - }, - "require-dev": { - "jeremeamia/superclosure": "^2.0", - "phpunit/phpunit": "^4.0 || ^5.0 || ^6.0 || ^7.0 || ^8.0 || ^9.0" - }, - "time": "2022-01-27T09:35:39+00:00", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.6.x-dev" - } - }, - "installation-source": "dist", - "autoload": { - "files": [ - "functions.php" - ], - "psr-4": { - "Opis\\Closure\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Marius Sarca", - "email": "marius.sarca@gmail.com" - }, - { - "name": "Sorin Sarca", - "email": "sarca_sorin@hotmail.com" - } - ], - "description": "A library that can be used to serialize closures (anonymous functions) and arbitrary objects.", - "homepage": "https://opis.io/closure", - "keywords": [ - "anonymous functions", - "closure", - "function", - "serializable", - "serialization", - "serialize" - ], - "support": { - "issues": "https://github.com/opis/closure/issues", - "source": "https://github.com/opis/closure/tree/3.6.3" - }, - "install-path": "../opis/closure" - }, { "name": "overtrue/pinyin", "version": "5.0.0", @@ -2158,6 +2533,188 @@ }, "install-path": "../ralouphie/getallheaders" }, + { + "name": "symfony/cache", + "version": "v5.4.23", + "version_normalized": "5.4.23.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/cache.git", + "reference": "983c79ff28612cdfd66d8e44e1a06e5afc87e107" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/cache/zipball/983c79ff28612cdfd66d8e44e1a06e5afc87e107", + "reference": "983c79ff28612cdfd66d8e44e1a06e5afc87e107", + "shasum": "" + }, + "require": { + "php": ">=7.2.5", + "psr/cache": "^1.0|^2.0", + "psr/log": "^1.1|^2|^3", + "symfony/cache-contracts": "^1.1.7|^2", + "symfony/deprecation-contracts": "^2.1|^3", + "symfony/polyfill-php73": "^1.9", + "symfony/polyfill-php80": "^1.16", + "symfony/service-contracts": "^1.1|^2|^3", + "symfony/var-exporter": "^4.4|^5.0|^6.0" + }, + "conflict": { + "doctrine/dbal": "<2.13.1", + "symfony/dependency-injection": "<4.4", + "symfony/http-kernel": "<4.4", + "symfony/var-dumper": "<4.4" + }, + "provide": { + "psr/cache-implementation": "1.0|2.0", + "psr/simple-cache-implementation": "1.0|2.0", + "symfony/cache-implementation": "1.0|2.0" + }, + "require-dev": { + "cache/integration-tests": "dev-master", + "doctrine/cache": "^1.6|^2.0", + "doctrine/dbal": "^2.13.1|^3.0", + "predis/predis": "^1.1", + "psr/simple-cache": "^1.0|^2.0", + "symfony/config": "^4.4|^5.0|^6.0", + "symfony/dependency-injection": "^4.4|^5.0|^6.0", + "symfony/filesystem": "^4.4|^5.0|^6.0", + "symfony/http-kernel": "^4.4|^5.0|^6.0", + "symfony/messenger": "^4.4|^5.0|^6.0", + "symfony/var-dumper": "^4.4|^5.0|^6.0" + }, + "time": "2023-04-21T15:38:51+00:00", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-4": { + "Symfony\\Component\\Cache\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides extended PSR-6, PSR-16 (and tags) implementations", + "homepage": "https://symfony.com", + "keywords": [ + "caching", + "psr6" + ], + "support": { + "source": "https://github.com/symfony/cache/tree/v5.4.23" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "install-path": "../symfony/cache" + }, + { + "name": "symfony/cache-contracts", + "version": "v2.5.2", + "version_normalized": "2.5.2.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/cache-contracts.git", + "reference": "64be4a7acb83b6f2bf6de9a02cee6dad41277ebc" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/cache-contracts/zipball/64be4a7acb83b6f2bf6de9a02cee6dad41277ebc", + "reference": "64be4a7acb83b6f2bf6de9a02cee6dad41277ebc", + "shasum": "" + }, + "require": { + "php": ">=7.2.5", + "psr/cache": "^1.0|^2.0|^3.0" + }, + "suggest": { + "symfony/cache-implementation": "" + }, + "time": "2022-01-02T09:53:40+00:00", + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "2.5-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "Symfony\\Contracts\\Cache\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Generic abstractions related to caching", + "homepage": "https://symfony.com", + "keywords": [ + "abstractions", + "contracts", + "decoupling", + "interfaces", + "interoperability", + "standards" + ], + "support": { + "source": "https://github.com/symfony/cache-contracts/tree/v2.5.2" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "install-path": "../symfony/cache-contracts" + }, { "name": "symfony/console", "version": "v6.0.19", @@ -2668,6 +3225,88 @@ ], "install-path": "../symfony/polyfill-mbstring" }, + { + "name": "symfony/polyfill-php73", + "version": "v1.27.0", + "version_normalized": "1.27.0.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-php73.git", + "reference": "9e8ecb5f92152187c4799efd3c96b78ccab18ff9" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/9e8ecb5f92152187c4799efd3c96b78ccab18ff9", + "reference": "9e8ecb5f92152187c4799efd3c96b78ccab18ff9", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "time": "2022-11-03T14:55:06+00:00", + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.27-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "installation-source": "dist", + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Php73\\": "" + }, + "classmap": [ + "Resources/stubs" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill backporting some PHP 7.3+ features to lower PHP versions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-php73/tree/v1.27.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "install-path": "../symfony/polyfill-php73" + }, { "name": "symfony/polyfill-php80", "version": "v1.27.0", @@ -2930,17 +3569,17 @@ }, { "name": "symfony/translation", - "version": "v5.4.22", - "version_normalized": "5.4.22.0", + "version": "v5.4.24", + "version_normalized": "5.4.24.0", "source": { "type": "git", "url": "https://github.com/symfony/translation.git", - "reference": "9a401392f01bc385aa42760eff481d213a0cc2ba" + "reference": "de237e59c5833422342be67402d487fbf50334ff" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation/zipball/9a401392f01bc385aa42760eff481d213a0cc2ba", - "reference": "9a401392f01bc385aa42760eff481d213a0cc2ba", + "url": "https://api.github.com/repos/symfony/translation/zipball/de237e59c5833422342be67402d487fbf50334ff", + "reference": "de237e59c5833422342be67402d487fbf50334ff", "shasum": "" }, "require": { @@ -2979,7 +3618,7 @@ "symfony/config": "", "symfony/yaml": "" }, - "time": "2023-03-27T16:07:23+00:00", + "time": "2023-05-19T12:34:17+00:00", "type": "library", "installation-source": "dist", "autoload": { @@ -3010,7 +3649,7 @@ "description": "Provides tools to internationalize your application", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/translation/tree/v5.4.22" + "source": "https://github.com/symfony/translation/tree/v5.4.24" }, "funding": [ { @@ -3201,52 +3840,79 @@ "install-path": "../symfony/var-dumper" }, { - "name": "topthink/think-cache", - "version": "v2.0.7", - "version_normalized": "2.0.7.0", + "name": "symfony/var-exporter", + "version": "v6.0.19", + "version_normalized": "6.0.19.0", "source": { "type": "git", - "url": "https://github.com/top-think/think-cache.git", - "reference": "7b6ace7eb9b569fe95000b254000bbafa3c7dfee" + "url": "https://github.com/symfony/var-exporter.git", + "reference": "df56f53818c2d5d9f683f4ad2e365ba73a3b69d2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/top-think/think-cache/zipball/7b6ace7eb9b569fe95000b254000bbafa3c7dfee", - "reference": "7b6ace7eb9b569fe95000b254000bbafa3c7dfee", + "url": "https://api.github.com/repos/symfony/var-exporter/zipball/df56f53818c2d5d9f683f4ad2e365ba73a3b69d2", + "reference": "df56f53818c2d5d9f683f4ad2e365ba73a3b69d2", "shasum": "" }, "require": { - "opis/closure": "^3.1", - "php": ">=7.1.0", - "psr/cache": "~1.0", - "psr/simple-cache": "^1.0", - "topthink/think-container": "~2.0" + "php": ">=8.0.2" }, - "time": "2023-01-16T08:09:09+00:00", + "require-dev": { + "symfony/var-dumper": "^5.4|^6.0" + }, + "time": "2023-01-13T08:34:10+00:00", "type": "library", "installation-source": "dist", "autoload": { - "files": [], "psr-4": { - "think\\": "src" - } + "Symfony\\Component\\VarExporter\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ - "Apache-2.0" + "MIT" ], "authors": [ { - "name": "liu21st", - "email": "liu21st@gmail.com" + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" } ], - "description": "Cache Manager", + "description": "Allows exporting any serializable PHP data structure to plain PHP code", + "homepage": "https://symfony.com", + "keywords": [ + "clone", + "construct", + "export", + "hydrate", + "instantiate", + "serialize" + ], "support": { - "issues": "https://github.com/top-think/think-cache/issues", - "source": "https://github.com/top-think/think-cache/tree/v2.0.7" + "source": "https://github.com/symfony/var-exporter/tree/v6.0.19" }, - "install-path": "../topthink/think-cache" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "install-path": "../symfony/var-exporter" }, { "name": "topthink/think-container", @@ -3540,6 +4206,83 @@ }, "install-path": "../topthink/think-validate" }, + { + "name": "voku/portable-ascii", + "version": "2.0.1", + "version_normalized": "2.0.1.0", + "source": { + "type": "git", + "url": "https://github.com/voku/portable-ascii.git", + "reference": "b56450eed252f6801410d810c8e1727224ae0743" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/voku/portable-ascii/zipball/b56450eed252f6801410d810c8e1727224ae0743", + "reference": "b56450eed252f6801410d810c8e1727224ae0743", + "shasum": "" + }, + "require": { + "php": ">=7.0.0" + }, + "require-dev": { + "phpunit/phpunit": "~6.0 || ~7.0 || ~9.0" + }, + "suggest": { + "ext-intl": "Use Intl for transliterator_transliterate() support" + }, + "time": "2022-03-08T17:03:00+00:00", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-4": { + "voku\\": "src/voku/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Lars Moelleken", + "homepage": "http://www.moelleken.org/" + } + ], + "description": "Portable ASCII library - performance optimized (ascii) string functions for php.", + "homepage": "https://github.com/voku/portable-ascii", + "keywords": [ + "ascii", + "clean", + "php" + ], + "support": { + "issues": "https://github.com/voku/portable-ascii/issues", + "source": "https://github.com/voku/portable-ascii/tree/2.0.1" + }, + "funding": [ + { + "url": "https://www.paypal.me/moelleken", + "type": "custom" + }, + { + "url": "https://github.com/voku", + "type": "github" + }, + { + "url": "https://opencollective.com/portable-ascii", + "type": "open_collective" + }, + { + "url": "https://www.patreon.com/voku", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/voku/portable-ascii", + "type": "tidelift" + } + ], + "install-path": "../voku/portable-ascii" + }, { "name": "webman/captcha", "version": "v1.0.2", @@ -3761,42 +4504,6 @@ }, "install-path": "../webman/redis-queue" }, - { - "name": "webman/think-cache", - "version": "v1.0.2", - "version_normalized": "1.0.2.0", - "source": { - "type": "git", - "url": "https://github.com/webman-php/think-cache.git", - "reference": "0420d03a564e3513b7578ec475c6699ec02cd081" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/webman-php/think-cache/zipball/0420d03a564e3513b7578ec475c6699ec02cd081", - "reference": "0420d03a564e3513b7578ec475c6699ec02cd081", - "shasum": "" - }, - "require": { - "topthink/think-cache": "^2.0.6" - }, - "time": "2023-01-12T07:25:39+00:00", - "type": "library", - "installation-source": "dist", - "autoload": { - "psr-4": { - "Webman\\ThinkCache\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "support": { - "issues": "https://github.com/webman-php/think-cache/issues", - "source": "https://github.com/webman-php/think-cache/tree/v1.0.2" - }, - "install-path": "../webman/think-cache" - }, { "name": "webman/think-orm", "version": "v1.1.0", diff --git a/vendor/composer/installed.php b/vendor/composer/installed.php index 274dab8..1d4cf0a 100644 --- a/vendor/composer/installed.php +++ b/vendor/composer/installed.php @@ -82,6 +82,60 @@ 'aliases' => array(), 'dev_requirement' => false, ), + 'illuminate/collections' => array( + 'pretty_version' => 'v9.52.9', + 'version' => '9.52.9.0', + 'reference' => '0168d0e44ea0c4fe5451fe08cde7049b9e9f9741', + 'type' => 'library', + 'install_path' => __DIR__ . '/../illuminate/collections', + 'aliases' => array(), + 'dev_requirement' => false, + ), + 'illuminate/conditionable' => array( + 'pretty_version' => 'v9.52.9', + 'version' => '9.52.9.0', + 'reference' => 'bea24daa0fa84b7e7b0d5b84f62c71b7e2dc3364', + 'type' => 'library', + 'install_path' => __DIR__ . '/../illuminate/conditionable', + 'aliases' => array(), + 'dev_requirement' => false, + ), + 'illuminate/contracts' => array( + 'pretty_version' => 'v9.52.9', + 'version' => '9.52.9.0', + 'reference' => '44f65d723b13823baa02ff69751a5948bde60c22', + 'type' => 'library', + 'install_path' => __DIR__ . '/../illuminate/contracts', + 'aliases' => array(), + 'dev_requirement' => false, + ), + 'illuminate/macroable' => array( + 'pretty_version' => 'v9.52.9', + 'version' => '9.52.9.0', + 'reference' => 'e3bfaf6401742a9c6abca61b9b10e998e5b6449a', + 'type' => 'library', + 'install_path' => __DIR__ . '/../illuminate/macroable', + 'aliases' => array(), + 'dev_requirement' => false, + ), + 'illuminate/redis' => array( + 'pretty_version' => 'v9.52.9', + 'version' => '9.52.9.0', + 'reference' => '856adc664a35dfcb8c59f8adbc97d5fbd250f9c2', + 'type' => 'library', + 'install_path' => __DIR__ . '/../illuminate/redis', + 'aliases' => array(), + 'dev_requirement' => false, + ), + 'illuminate/support' => array( + 'pretty_version' => 'v9.52.9', + 'version' => '9.52.9.0', + 'reference' => '3fc1d9deb1dc8c256c3394e1547dccdd386bb2f5', + 'type' => 'library', + 'install_path' => __DIR__ . '/../illuminate/support', + 'aliases' => array(), + 'dev_requirement' => false, + ), 'laravel/serializable-closure' => array( 'pretty_version' => 'v1.3.0', 'version' => '1.3.0.0', @@ -145,6 +199,15 @@ 'aliases' => array(), 'dev_requirement' => false, ), + 'nesbot/carbon' => array( + 'pretty_version' => '2.67.0', + 'version' => '2.67.0.0', + 'reference' => 'c1001b3bc75039b07f38a79db5237c4c529e04c8', + 'type' => 'library', + 'install_path' => __DIR__ . '/../nesbot/carbon', + 'aliases' => array(), + 'dev_requirement' => false, + ), 'nikic/fast-route' => array( 'pretty_version' => 'v1.3.0', 'version' => '1.3.0.0', @@ -154,15 +217,6 @@ 'aliases' => array(), 'dev_requirement' => false, ), - 'opis/closure' => array( - 'pretty_version' => '3.6.3', - 'version' => '3.6.3.0', - 'reference' => '3d81e4309d2a927abbe66df935f4bb60082805ad', - 'type' => 'library', - 'install_path' => __DIR__ . '/../opis/closure', - 'aliases' => array(), - 'dev_requirement' => false, - ), 'overtrue/pinyin' => array( 'pretty_version' => '5.0.0', 'version' => '5.0.0.0', @@ -226,6 +280,12 @@ 'aliases' => array(), 'dev_requirement' => false, ), + 'psr/cache-implementation' => array( + 'dev_requirement' => false, + 'provided' => array( + 0 => '1.0|2.0', + ), + ), 'psr/container' => array( 'pretty_version' => '1.1.1', 'version' => '1.1.1.0', @@ -320,6 +380,12 @@ 'aliases' => array(), 'dev_requirement' => false, ), + 'psr/simple-cache-implementation' => array( + 'dev_requirement' => false, + 'provided' => array( + 0 => '1.0|2.0', + ), + ), 'ralouphie/getallheaders' => array( 'pretty_version' => '3.0.3', 'version' => '3.0.3.0', @@ -329,6 +395,30 @@ 'aliases' => array(), 'dev_requirement' => false, ), + 'symfony/cache' => array( + 'pretty_version' => 'v5.4.23', + 'version' => '5.4.23.0', + 'reference' => '983c79ff28612cdfd66d8e44e1a06e5afc87e107', + 'type' => 'library', + 'install_path' => __DIR__ . '/../symfony/cache', + 'aliases' => array(), + 'dev_requirement' => false, + ), + 'symfony/cache-contracts' => array( + 'pretty_version' => 'v2.5.2', + 'version' => '2.5.2.0', + 'reference' => '64be4a7acb83b6f2bf6de9a02cee6dad41277ebc', + 'type' => 'library', + 'install_path' => __DIR__ . '/../symfony/cache-contracts', + 'aliases' => array(), + 'dev_requirement' => false, + ), + 'symfony/cache-implementation' => array( + 'dev_requirement' => false, + 'provided' => array( + 0 => '1.0|2.0', + ), + ), 'symfony/console' => array( 'pretty_version' => 'v6.0.19', 'version' => '6.0.19.0', @@ -383,6 +473,15 @@ 'aliases' => array(), 'dev_requirement' => false, ), + 'symfony/polyfill-php73' => array( + 'pretty_version' => 'v1.27.0', + 'version' => '1.27.0.0', + 'reference' => '9e8ecb5f92152187c4799efd3c96b78ccab18ff9', + 'type' => 'library', + 'install_path' => __DIR__ . '/../symfony/polyfill-php73', + 'aliases' => array(), + 'dev_requirement' => false, + ), 'symfony/polyfill-php80' => array( 'pretty_version' => 'v1.27.0', 'version' => '1.27.0.0', @@ -411,9 +510,9 @@ 'dev_requirement' => false, ), 'symfony/translation' => array( - 'pretty_version' => 'v5.4.22', - 'version' => '5.4.22.0', - 'reference' => '9a401392f01bc385aa42760eff481d213a0cc2ba', + 'pretty_version' => 'v5.4.24', + 'version' => '5.4.24.0', + 'reference' => 'de237e59c5833422342be67402d487fbf50334ff', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/translation', 'aliases' => array(), @@ -443,12 +542,12 @@ 'aliases' => array(), 'dev_requirement' => false, ), - 'topthink/think-cache' => array( - 'pretty_version' => 'v2.0.7', - 'version' => '2.0.7.0', - 'reference' => '7b6ace7eb9b569fe95000b254000bbafa3c7dfee', + 'symfony/var-exporter' => array( + 'pretty_version' => 'v6.0.19', + 'version' => '6.0.19.0', + 'reference' => 'df56f53818c2d5d9f683f4ad2e365ba73a3b69d2', 'type' => 'library', - 'install_path' => __DIR__ . '/../topthink/think-cache', + 'install_path' => __DIR__ . '/../symfony/var-exporter', 'aliases' => array(), 'dev_requirement' => false, ), @@ -506,6 +605,15 @@ 'aliases' => array(), 'dev_requirement' => false, ), + 'voku/portable-ascii' => array( + 'pretty_version' => '2.0.1', + 'version' => '2.0.1.0', + 'reference' => 'b56450eed252f6801410d810c8e1727224ae0743', + 'type' => 'library', + 'install_path' => __DIR__ . '/../voku/portable-ascii', + 'aliases' => array(), + 'dev_requirement' => false, + ), 'webman/captcha' => array( 'pretty_version' => 'v1.0.2', 'version' => '1.0.2.0', @@ -551,15 +659,6 @@ 'aliases' => array(), 'dev_requirement' => false, ), - 'webman/think-cache' => array( - 'pretty_version' => 'v1.0.2', - 'version' => '1.0.2.0', - 'reference' => '0420d03a564e3513b7578ec475c6699ec02cd081', - 'type' => 'library', - 'install_path' => __DIR__ . '/../webman/think-cache', - 'aliases' => array(), - 'dev_requirement' => false, - ), 'webman/think-orm' => array( 'pretty_version' => 'v1.1.0', 'version' => '1.1.0.0', diff --git a/vendor/opis/closure/CHANGELOG.md b/vendor/opis/closure/CHANGELOG.md deleted file mode 100644 index 16c9e3d..0000000 --- a/vendor/opis/closure/CHANGELOG.md +++ /dev/null @@ -1,260 +0,0 @@ -CHANGELOG ---------- - -### v3.6.2, 2021.04.09 - -- Fixed string interpolation - -### v3.6.1, 2020.11.07 - -- Fixed serialization error [#84](https://github.com/opis/closure/issues/84) - -### v3.6.0, 2020.10.12 - -- Initial PHP 8 Support [#67](https://github.com/opis/closure/issues/67). - -### v3.5.7, 2020.09.06 - -- Fixed issue [#76](https://github.com/opis/closure/issues/76). -- Fixed issue [#78](https://github.com/opis/closure/issues/78). - -### v3.5.6, 2020.08.11 - -- Fixed issue [#70](https://github.com/opis/closure/issues/70) - -### v3.5.5, 2020.06.17 - -- Fixed a false-positive when using `Opis\Closure\ReflectionClosure::isScopeRequired` method - -### v3.5.4, 2020.06.07 - -- Fixed a false-positive when using `Opis\Closure\ReflectionClosure::isScopeRequired` method -- Fixed a bug related to `T_STRING_VARNAME` - -### v3.5.3, 2020.05.25 - -- Improved parser -- The class scope optimisation is no longer used. We always bind now to the closure's original class scope. -When the class scope was `null`, the optimisation failed to work as expected and kept the wrong `SerializableClosure` scope. - -### v3.5.2, 2020.05.21 - -- Removed extra semicolon in short closures, since is not part of the closure's body. - -### v3.5.1, 2019.11.30 - -- Bugfix. See #47 - -### v3.5.0, 2019.11.29 - -- Added support for short closures (arrow functions) -- Added `isShortClosure` method to `Opis\Closure\ReflectionClosure` - -### v3.4.2, 2019.11.29 - -- Added `stream_set_option()` - -### v3.4.1, 2019.10.19 - -- Fixed a [bug](https://github.com/opis/closure/issues/40) that prevented serialization to work correctly. - -### v3.4.0, 2019.09.03 - -- Added `createClosure` static method in `Opis\Closure\SerializableClosure`. -This method creates a new closure from arbitrary code, emulating `create_function`, -but without using eval - -### v3.3.1, 2019.07.10 - -- Use `sha1` instead of `md5` for hashing file names in `Opis\Closure\ReflectionClosure` class - -### v3.3.0, 2019.05.31 - -- Fixed a bug that prevented signed closures to properly work when the serialized string -contains invalid UTF-8 chars. Starting with this version `json_encode` is no longer used -when signing a closure. Backward compatibility is maintained and all closures that were -previously signed using the old method will continue to work. - -### v3.2.0, 2019.05.05 - -- Since an unsigned closure can be unserialized when no security provider is set, -there is no reason to treat differently a signed closure in the same situation. -Therefore, the `Opis\Closure\SecurityException` exception is no longer thrown when -unserializing a signed closure, if no security provider is set. - -### v3.1.6, 2019.02.22 - -- Fixed a bug that occurred when trying to set properties of classes that were not defined in user-land. -Those properties are now ignored. - -### v3.1.5, 2019.01.14 - -- Improved parser - -### v3.1.4, 2019.01.14 - -- Added support for static methods that are named using PHP keywords or magic constants. -Ex: `A::new()`, `A::use()`, `A::if()`, `A::function()`, `A::__DIR__()`, etc. -- Used `@internal` to mark classes & methods that are for internal use only and -backward compatibility is not guaranteed. - -### v3.1.3, 2019.01.07 - -- Fixed a bug that prevented traits to be correctly resolved when used by an -anonymous class -- Fixed a bug that occurred when `$this` keyword was used inside an anonymous class - -### v3.1.2, 2018.12.16 - -* Fixed a bug regarding comma trail in group-use statements. See [issue 23](https://github.com/opis/closure/issues/23) - -### v3.1.1, 2018.10.02 - -* Fixed a bug where `parent` keyword was treated like a class-name and scope was not added to the -serialized closure -* Fixed a bug where return type was not properly handled for nested closures -* Support for anonymous classes was improved - -### v3.1.0, 2018.09.20 - -* Added `transformUseVariables` and `resolveUseVariables` to -`Opis\Closure\SerializableClosure` class. -* Added `removeSecurityProvider` static method to -`Opis\Closure\SerializableClosure` class. -* Fixed some security related issues where a user was able to unserialize an unsigned -closure, even when a security provider was in use. - -### v3.0.12, 2018.02.23 - -* Bugfix. See [issue 20](https://github.com/opis/closure/issues/20) - -### v3.0.11, 2018.01.22 - -* Bugfix. See [issue 18](https://github.com/opis/closure/issues/18) - -### v3.0.10, 2018.01.04 - -* Improved support for PHP 7.1 & 7.2 - -### v3.0.9, 2018.01.04 - -* Fixed a bug where the return type was not properly resolved. -See [issue 17](https://github.com/opis/closure/issues/17) -* Added more tests - -### v3.0.8, 2017.12.18 - -* Fixed a bug. See [issue 16](https://github.com/opis/closure/issues/16) - -### v3.0.7, 2017.10.31 - -* Bugfix: static properties are ignored now, since they are not serializable - -### v3.0.6, 2017.10.06 - -* Fixed a bug introduced by accident in 3.0.5 - -### v3.0.5, 2017.09.18 - -* Fixed a bug related to nested references - -### v3.0.4, 2017.09.18 - -* \[*internal*\] Refactored `SerializableClosure::mapPointers` method -* \[*internal*\] Added a new optional argument to `SerializableClosure::unwrapClosures` -* \[*internal*\] Removed `SerializableClosure::getClosurePointer` method -* Fixed various bugs - -### v3.0.3, 2017.09.06 - -* Fixed a bug related to nested object references -* \[*internal*\] `Opis\Closure\ClosureScope` now extends `SplObjectStorage` -* \[*internal*\] The `storage` property was removed from `Opis\Closure\ClosureScope` -* \[*internal*\] The `instances` and `objects` properties were removed from `Opis\Closure\ClosureContext` - -### v3.0.2, 2017.08.28 - -* Fixed a bug where `$this` object was not handled properly inside the -`SerializableClosre::serialize` method. - -### v3.0.1, 2017.04.13 - -* Fixed a bug in 'ignore_next' state - -### v3.0.0, 2017.04.07 - -* Dropped PHP 5.3 support -* Moved source files from `lib` to `src` folder -* Removed second parameter from `Opis\Closure\SerializableClosure::from` method and from constructor -* Removed `Opis\Closure\{SecurityProviderInterface, DefaultSecurityProvider, SecureClosure}` classes -* Refactored how signed closures were handled -* Added `wrapClosures` and `unwrapClosures` static methods to `Opis\Closure\SerializableClosure` class -* Added `Opis\Colosure\serialize` and `Opis\Closure\unserialize` functions -* Improved serialization. You can now serialize arbitrary objects and the library will automatically wrap all closures - -### v2.4.0, 2016.12.16 - -* The parser was refactored and improved -* Refactored `Opis\Closure\SerializableClosure::__invoke` method -* `Opis\Closure\{ISecurityProvider, SecurityProvider}` were added -* `Opis\Closure\{SecurityProviderInterface, DefaultSecurityProvider, SecureClosure}` were deprecated -and they will be removed in the next major version -* `setSecretKey` and `addSecurityProvider` static methods were added to `Opis\Closure\SerializableClosure` - -### v2.3.2, 2016.12.15 - -* Fixed a bug that prevented namespace resolution to be done properly - -### v2.3.1, 2016.12.13 - -* Hotfix. See [PR](https://github.com/opis/closure/pull/7) - -### v2.3.0, 2016.11.17 - -* Added `isBindingRequired` and `isScopeRequired` to the `Opis\Closure\ReflectionClosure` class -* Automatically detects when the scope and/or the bound object of a closure needs to be serialized. - -### v2.2.1, 2016.08.20 - -* Fixed a bug in `Opis\Closure\ReflectionClosure::fetchItems` - -### v2.2.0, 2016.07.26 - -* Fixed CS -* `Opis\Closure\ClosureContext`, `Opis\Closure\ClosureScope`, `Opis\Closure\SelfReference` - and `Opis\Closure\SecurityException` classes were moved into separate files -* Added support for PHP7 syntax -* Fixed some bugs in `Opis\Closure\ReflectionClosure` class -* Improved closure parser -* Added an analyzer for SuperClosure library - -### v2.1.0, 2015.09.30 - -* Added support for the missing `__METHOD__`, `__FUNCTION__` and `__TRAIT__` magic constants -* Added some security related classes and interfaces: `Opis\Closure\SecurityProviderInterface`, -`Opis\Closure\DefaultSecurityProvider`, `Opis\Closure\SecureClosure`, `Opis\Closure\SecurityException`. -* Fiexed a bug in `Opis\Closure\ReflectionClosure::getClasses` method -* Other minor bugfixes -* Added support for static closures -* Added public `isStatic` method to `Opis\Closure\ReflectionClosure` class - - -### v2.0.1, 2015.09.23 - -* Removed `branch-alias` property from `composer.json` -* Bugfix. See [issue #6](https://github.com/opis/closure/issues/6) - -### v2.0.0, 2015.07.31 - -* The closure parser was improved -* Class names are now automatically resolved -* Added support for the `#trackme` directive which allows tracking closure's residing source - -### v1.3.0, 2014.10.18 - -* Added autoload file -* Changed README file - -### Opis Closure 1.2.2 - -* Started changelog diff --git a/vendor/opis/closure/LICENSE b/vendor/opis/closure/LICENSE deleted file mode 100644 index 9c0a19b..0000000 --- a/vendor/opis/closure/LICENSE +++ /dev/null @@ -1,20 +0,0 @@ -The MIT License (MIT) - -Copyright (c) 2018-2019 Zindex Software - -Permission is hereby granted, free of charge, to any person obtaining a copy of -this software and associated documentation files (the "Software"), to deal in -the Software without restriction, including without limitation the rights to -use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software is furnished to do so, -subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS -FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR -COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/vendor/opis/closure/NOTICE b/vendor/opis/closure/NOTICE deleted file mode 100644 index ae5caa6..0000000 --- a/vendor/opis/closure/NOTICE +++ /dev/null @@ -1,9 +0,0 @@ -Opis Closure -Copyright 2018-2019 Zindex Software - -This product includes software developed at -Zindex Software (http://zindex.software). - -This software was originally developed by Marius Sarca and Sorin Sarca -(Copyright 2014-2018). The copyright info was changed with the permission -of the original authors. \ No newline at end of file diff --git a/vendor/opis/closure/README.md b/vendor/opis/closure/README.md deleted file mode 100644 index f5f3ad8..0000000 --- a/vendor/opis/closure/README.md +++ /dev/null @@ -1,92 +0,0 @@ -Opis Closure -==================== -[![Tests](https://github.com/opis/closure/workflows/Tests/badge.svg)](https://github.com/opis/closure/actions) -[![Latest Stable Version](https://poser.pugx.org/opis/closure/v/stable.png)](https://packagist.org/packages/opis/closure) -[![Latest Unstable Version](https://poser.pugx.org/opis/closure/v/unstable.png)](https://packagist.org/packages/opis/closure) -[![License](https://poser.pugx.org/opis/closure/license.png)](https://packagist.org/packages/opis/closure) - -Serializable closures ---------------------- -**Opis Closure** is a library that aims to overcome PHP's limitations regarding closure -serialization by providing a wrapper that will make all closures serializable. - -**The library's key features:** - -- Serialize any closure -- Serialize arbitrary objects -- Doesn't use `eval` for closure serialization or unserialization -- Works with any PHP version that has support for closures -- Supports PHP 7 syntax -- Handles all variables referenced/imported in `use()` and automatically wraps all referenced/imported closures for -proper serialization -- Handles recursive closures -- Handles magic constants like `__FILE__`, `__DIR__`, `__LINE__`, `__NAMESPACE__`, `__CLASS__`, -`__TRAIT__`, `__METHOD__` and `__FUNCTION__`. -- Automatically resolves all class names, function names and constant names used inside the closure -- Track closure's residing source by using the `#trackme` directive -- Simple and very fast parser -- Any error or exception, that might occur when executing an unserialized closure, can be caught and treated properly -- You can serialize/unserialize any closure unlimited times, even those previously unserialized -(this is possible because `eval()` is not used for unserialization) -- Handles static closures -- Supports cryptographically signed closures -- Provides a reflector that can give you information about the serialized closure -- Provides an analyzer for *SuperClosure* library -- Automatically detects when the scope and/or the bound object of a closure needs to be serialized -in order for the closure to work after deserialization - -## Documentation - -The full documentation for this library can be found [here][documentation]. - -## License - -**Opis Closure** is licensed under the [MIT License (MIT)][license]. - -## Requirements - -* PHP ^5.4 || ^7.0 || ^8.0 - -## Installation - -**Opis Closure** is available on [Packagist] and it can be installed from a -command line interface by using [Composer]. - -```bash -composer require opis/closure -``` - -Or you could directly reference it into your `composer.json` file as a dependency - -```json -{ - "require": { - "opis/closure": "^3.5" - } -} -``` - -### Migrating from 2.x - -If your project needs to support PHP 5.3 you can continue using the `2.x` version -of **Opis Closure**. Otherwise, assuming you are not using one of the removed/refactored classes or features(see -[CHANGELOG]), migrating to version `3.x` is simply a matter of updating your `composer.json` file. - -### Semantic versioning - -**Opis Closure** follows [semantic versioning][SemVer] specifications. - -### Arbitrary object serialization - -We've added this feature in order to be able to support the serialization of a closure's bound object. -The implementation is far from being perfect, and it's really hard to make it work flawless. -We will try to improve this, but we can't guarantee anything. -So our advice regarding the `Opis\Closure\serialize|unserialize` functions is to use them with caution. - - -[documentation]: https://www.opis.io/closure "Opis Closure" -[license]: http://opensource.org/licenses/MIT "MIT License" -[Packagist]: https://packagist.org/packages/opis/closure "Packagist" -[Composer]: https://getcomposer.org "Composer" -[SemVer]: http://semver.org/ "Semantic versioning" -[CHANGELOG]: https://github.com/opis/closure/blob/master/CHANGELOG.md "Changelog" diff --git a/vendor/opis/closure/autoload.php b/vendor/opis/closure/autoload.php deleted file mode 100644 index 2354ea5..0000000 --- a/vendor/opis/closure/autoload.php +++ /dev/null @@ -1,39 +0,0 @@ -getClosureScopeClass(); - - $data = [ - 'reflection' => $reflection, - 'code' => $reflection->getCode(), - 'hasThis' => $reflection->isBindingRequired(), - 'context' => $reflection->getUseVariables(), - 'hasRefs' => false, - 'binding' => $reflection->getClosureThis(), - 'scope' => $scope ? $scope->getName() : null, - 'isStatic' => $reflection->isStatic(), - ]; - - return $data; - } - - /** - * @param array $data - * @return mixed - */ - protected function determineCode(array &$data) - { - return null; - } - - /** - * @param array $data - * @return mixed - */ - protected function determineContext(array &$data) - { - return null; - } - -} diff --git a/vendor/opis/closure/src/ClosureContext.php b/vendor/opis/closure/src/ClosureContext.php deleted file mode 100644 index d8f13d9..0000000 --- a/vendor/opis/closure/src/ClosureContext.php +++ /dev/null @@ -1,34 +0,0 @@ -scope = new ClosureScope(); - $this->locks = 0; - } -} \ No newline at end of file diff --git a/vendor/opis/closure/src/ClosureScope.php b/vendor/opis/closure/src/ClosureScope.php deleted file mode 100644 index 3afd9b5..0000000 --- a/vendor/opis/closure/src/ClosureScope.php +++ /dev/null @@ -1,25 +0,0 @@ -content = "length = strlen($this->content); - return true; - } - - public function stream_read($count) - { - $value = substr($this->content, $this->pointer, $count); - $this->pointer += $count; - return $value; - } - - public function stream_eof() - { - return $this->pointer >= $this->length; - } - - public function stream_set_option($option, $arg1, $arg2) - { - return false; - } - - public function stream_stat() - { - $stat = stat(__FILE__); - $stat[7] = $stat['size'] = $this->length; - return $stat; - } - - public function url_stat($path, $flags) - { - $stat = stat(__FILE__); - $stat[7] = $stat['size'] = $this->length; - return $stat; - } - - public function stream_seek($offset, $whence = SEEK_SET) - { - $crt = $this->pointer; - - switch ($whence) { - case SEEK_SET: - $this->pointer = $offset; - break; - case SEEK_CUR: - $this->pointer += $offset; - break; - case SEEK_END: - $this->pointer = $this->length + $offset; - break; - } - - if ($this->pointer < 0 || $this->pointer >= $this->length) { - $this->pointer = $crt; - return false; - } - - return true; - } - - public function stream_tell() - { - return $this->pointer; - } - - public static function register() - { - if (!static::$isRegistered) { - static::$isRegistered = stream_wrapper_register(static::STREAM_PROTO, __CLASS__); - } - } - -} diff --git a/vendor/opis/closure/src/ISecurityProvider.php b/vendor/opis/closure/src/ISecurityProvider.php deleted file mode 100644 index 54e2e20..0000000 --- a/vendor/opis/closure/src/ISecurityProvider.php +++ /dev/null @@ -1,25 +0,0 @@ -isStaticClosure === null) { - $this->isStaticClosure = strtolower(substr($this->getCode(), 0, 6)) === 'static'; - } - - return $this->isStaticClosure; - } - - public function isShortClosure() - { - if ($this->isShortClosure === null) { - $code = $this->getCode(); - if ($this->isStatic()) { - $code = substr($code, 6); - } - $this->isShortClosure = strtolower(substr(trim($code), 0, 2)) === 'fn'; - } - - return $this->isShortClosure; - } - - /** - * @return string - */ - public function getCode() - { - if($this->code !== null){ - return $this->code; - } - - $fileName = $this->getFileName(); - $line = $this->getStartLine() - 1; - - $className = null; - - if (null !== $className = $this->getClosureScopeClass()) { - $className = '\\' . trim($className->getName(), '\\'); - } - - $builtin_types = self::getBuiltinTypes(); - $class_keywords = ['self', 'static', 'parent']; - - $ns = $this->getNamespaceName(); - $nsf = $ns == '' ? '' : ($ns[0] == '\\' ? $ns : '\\' . $ns); - - $_file = var_export($fileName, true); - $_dir = var_export(dirname($fileName), true); - $_namespace = var_export($ns, true); - $_class = var_export(trim($className, '\\'), true); - $_function = $ns . ($ns == '' ? '' : '\\') . '{closure}'; - $_method = ($className == '' ? '' : trim($className, '\\') . '::') . $_function; - $_function = var_export($_function, true); - $_method = var_export($_method, true); - $_trait = null; - - $tokens = $this->getTokens(); - $state = $lastState = 'start'; - $inside_structure = false; - $isShortClosure = false; - $inside_structure_mark = 0; - $open = 0; - $code = ''; - $id_start = $id_start_ci = $id_name = $context = ''; - $classes = $functions = $constants = null; - $use = array(); - $lineAdd = 0; - $isUsingScope = false; - $isUsingThisObject = false; - - for($i = 0, $l = count($tokens); $i < $l; $i++) { - $token = $tokens[$i]; - switch ($state) { - case 'start': - if ($token[0] === T_FUNCTION || $token[0] === T_STATIC) { - $code .= $token[1]; - $state = $token[0] === T_FUNCTION ? 'function' : 'static'; - } elseif ($token[0] === T_FN) { - $isShortClosure = true; - $code .= $token[1]; - $state = 'closure_args'; - } - break; - case 'static': - if ($token[0] === T_WHITESPACE || $token[0] === T_COMMENT || $token[0] === T_FUNCTION) { - $code .= $token[1]; - if ($token[0] === T_FUNCTION) { - $state = 'function'; - } - } elseif ($token[0] === T_FN) { - $isShortClosure = true; - $code .= $token[1]; - $state = 'closure_args'; - } else { - $code = ''; - $state = 'start'; - } - break; - case 'function': - switch ($token[0]){ - case T_STRING: - $code = ''; - $state = 'named_function'; - break; - case '(': - $code .= '('; - $state = 'closure_args'; - break; - default: - $code .= is_array($token) ? $token[1] : $token; - } - break; - case 'named_function': - if($token[0] === T_FUNCTION || $token[0] === T_STATIC){ - $code = $token[1]; - $state = $token[0] === T_FUNCTION ? 'function' : 'static'; - } elseif ($token[0] === T_FN) { - $isShortClosure = true; - $code .= $token[1]; - $state = 'closure_args'; - } - break; - case 'closure_args': - switch ($token[0]){ - case T_NAME_QUALIFIED: - list($id_start, $id_start_ci, $id_name) = $this->parseNameQualified($token[1]); - $context = 'args'; - $state = 'id_name'; - $lastState = 'closure_args'; - break; - case T_NS_SEPARATOR: - case T_STRING: - $id_start = $token[1]; - $id_start_ci = strtolower($id_start); - $id_name = ''; - $context = 'args'; - $state = 'id_name'; - $lastState = 'closure_args'; - break; - case T_USE: - $code .= $token[1]; - $state = 'use'; - break; - case T_DOUBLE_ARROW: - $code .= $token[1]; - if ($isShortClosure) { - $state = 'closure'; - } - break; - case ':': - $code .= ':'; - $state = 'return'; - break; - case '{': - $code .= '{'; - $state = 'closure'; - $open++; - break; - default: - $code .= is_array($token) ? $token[1] : $token; - } - break; - case 'use': - switch ($token[0]){ - case T_VARIABLE: - $use[] = substr($token[1], 1); - $code .= $token[1]; - break; - case '{': - $code .= '{'; - $state = 'closure'; - $open++; - break; - case ':': - $code .= ':'; - $state = 'return'; - break; - default: - $code .= is_array($token) ? $token[1] : $token; - break; - } - break; - case 'return': - switch ($token[0]){ - case T_WHITESPACE: - case T_COMMENT: - case T_DOC_COMMENT: - $code .= $token[1]; - break; - case T_NS_SEPARATOR: - case T_STRING: - $id_start = $token[1]; - $id_start_ci = strtolower($id_start); - $id_name = ''; - $context = 'return_type'; - $state = 'id_name'; - $lastState = 'return'; - break 2; - case T_NAME_QUALIFIED: - list($id_start, $id_start_ci, $id_name) = $this->parseNameQualified($token[1]); - $context = 'return_type'; - $state = 'id_name'; - $lastState = 'return'; - break 2; - case T_DOUBLE_ARROW: - $code .= $token[1]; - if ($isShortClosure) { - $state = 'closure'; - } - break; - case '{': - $code .= '{'; - $state = 'closure'; - $open++; - break; - default: - $code .= is_array($token) ? $token[1] : $token; - break; - } - break; - case 'closure': - switch ($token[0]){ - case T_CURLY_OPEN: - case T_DOLLAR_OPEN_CURLY_BRACES: - case '{': - $code .= is_array($token) ? $token[1] : $token; - $open++; - break; - case '}': - $code .= '}'; - if(--$open === 0 && !$isShortClosure){ - break 3; - } elseif ($inside_structure) { - $inside_structure = !($open === $inside_structure_mark); - } - break; - case '(': - case '[': - $code .= $token[0]; - if ($isShortClosure) { - $open++; - } - break; - case ')': - case ']': - if ($isShortClosure) { - if ($open === 0) { - break 3; - } - --$open; - } - $code .= $token[0]; - break; - case ',': - case ';': - if ($isShortClosure && $open === 0) { - break 3; - } - $code .= $token[0]; - break; - case T_LINE: - $code .= $token[2] - $line + $lineAdd; - break; - case T_FILE: - $code .= $_file; - break; - case T_DIR: - $code .= $_dir; - break; - case T_NS_C: - $code .= $_namespace; - break; - case T_CLASS_C: - $code .= $inside_structure ? $token[1] : $_class; - break; - case T_FUNC_C: - $code .= $inside_structure ? $token[1] : $_function; - break; - case T_METHOD_C: - $code .= $inside_structure ? $token[1] : $_method; - break; - case T_COMMENT: - if (substr($token[1], 0, 8) === '#trackme') { - $timestamp = time(); - $code .= '/**' . PHP_EOL; - $code .= '* Date : ' . date(DATE_W3C, $timestamp) . PHP_EOL; - $code .= '* Timestamp : ' . $timestamp . PHP_EOL; - $code .= '* Line : ' . ($line + 1) . PHP_EOL; - $code .= '* File : ' . $_file . PHP_EOL . '*/' . PHP_EOL; - $lineAdd += 5; - } else { - $code .= $token[1]; - } - break; - case T_VARIABLE: - if($token[1] == '$this' && !$inside_structure){ - $isUsingThisObject = true; - } - $code .= $token[1]; - break; - case T_STATIC: - case T_NS_SEPARATOR: - case T_STRING: - $id_start = $token[1]; - $id_start_ci = strtolower($id_start); - $id_name = ''; - $context = 'root'; - $state = 'id_name'; - $lastState = 'closure'; - break 2; - case T_NAME_QUALIFIED: - list($id_start, $id_start_ci, $id_name) = $this->parseNameQualified($token[1]); - $context = 'root'; - $state = 'id_name'; - $lastState = 'closure'; - break 2; - case T_NEW: - $code .= $token[1]; - $context = 'new'; - $state = 'id_start'; - $lastState = 'closure'; - break 2; - case T_USE: - $code .= $token[1]; - $context = 'use'; - $state = 'id_start'; - $lastState = 'closure'; - break; - case T_INSTANCEOF: - case T_INSTEADOF: - $code .= $token[1]; - $context = 'instanceof'; - $state = 'id_start'; - $lastState = 'closure'; - break; - case T_OBJECT_OPERATOR: - case T_DOUBLE_COLON: - $code .= $token[1]; - $lastState = 'closure'; - $state = 'ignore_next'; - break; - case T_FUNCTION: - $code .= $token[1]; - $state = 'closure_args'; - if (!$inside_structure) { - $inside_structure = true; - $inside_structure_mark = $open; - } - break; - case T_TRAIT_C: - if ($_trait === null) { - $startLine = $this->getStartLine(); - $endLine = $this->getEndLine(); - $structures = $this->getStructures(); - - $_trait = ''; - - foreach ($structures as &$struct) { - if ($struct['type'] === 'trait' && - $struct['start'] <= $startLine && - $struct['end'] >= $endLine - ) { - $_trait = ($ns == '' ? '' : $ns . '\\') . $struct['name']; - break; - } - } - - $_trait = var_export($_trait, true); - } - - $code .= $_trait; - break; - default: - $code .= is_array($token) ? $token[1] : $token; - } - break; - case 'ignore_next': - switch ($token[0]){ - case T_WHITESPACE: - case T_COMMENT: - case T_DOC_COMMENT: - $code .= $token[1]; - break; - case T_CLASS: - case T_NEW: - case T_STATIC: - case T_VARIABLE: - case T_STRING: - case T_CLASS_C: - case T_FILE: - case T_DIR: - case T_METHOD_C: - case T_FUNC_C: - case T_FUNCTION: - case T_INSTANCEOF: - case T_LINE: - case T_NS_C: - case T_TRAIT_C: - case T_USE: - $code .= $token[1]; - $state = $lastState; - break; - default: - $state = $lastState; - $i--; - } - break; - case 'id_start': - switch ($token[0]){ - case T_WHITESPACE: - case T_COMMENT: - case T_DOC_COMMENT: - $code .= $token[1]; - break; - case T_NS_SEPARATOR: - case T_NAME_FULLY_QUALIFIED: - case T_STRING: - case T_STATIC: - $id_start = $token[1]; - $id_start_ci = strtolower($id_start); - $id_name = ''; - $state = 'id_name'; - break 2; - case T_NAME_QUALIFIED: - list($id_start, $id_start_ci, $id_name) = $this->parseNameQualified($token[1]); - $state = 'id_name'; - break 2; - case T_VARIABLE: - $code .= $token[1]; - $state = $lastState; - break; - case T_CLASS: - $code .= $token[1]; - $state = 'anonymous'; - break; - default: - $i--;//reprocess last - $state = 'id_name'; - } - break; - case 'id_name': - switch ($token[0]){ - case T_NAME_QUALIFIED: - case T_NS_SEPARATOR: - case T_STRING: - case T_WHITESPACE: - case T_COMMENT: - case T_DOC_COMMENT: - $id_name .= $token[1]; - break; - case '(': - if ($isShortClosure) { - $open++; - } - if($context === 'new' || false !== strpos($id_name, '\\')){ - if($id_start_ci === 'self' || $id_start_ci === 'static') { - if (!$inside_structure) { - $isUsingScope = true; - } - } elseif ($id_start !== '\\' && !in_array($id_start_ci, $class_keywords)) { - if ($classes === null) { - $classes = $this->getClasses(); - } - if (isset($classes[$id_start_ci])) { - $id_start = $classes[$id_start_ci]; - } - if($id_start[0] !== '\\'){ - $id_start = $nsf . '\\' . $id_start; - } - } - } else { - if($id_start !== '\\'){ - if($functions === null){ - $functions = $this->getFunctions(); - } - if(isset($functions[$id_start_ci])){ - $id_start = $functions[$id_start_ci]; - } elseif ($nsf !== '\\' && function_exists($nsf . '\\' . $id_start)) { - $id_start = $nsf . '\\' . $id_start; - // Cache it to functions array - $functions[$id_start_ci] = $id_start; - } - } - } - $code .= $id_start . $id_name . '('; - $state = $lastState; - break; - case T_VARIABLE: - case T_DOUBLE_COLON: - if($id_start !== '\\') { - if($id_start_ci === 'self' || $id_start_ci === 'parent'){ - if (!$inside_structure) { - $isUsingScope = true; - } - } elseif ($id_start_ci === 'static') { - if (!$inside_structure) { - $isUsingScope = $token[0] === T_DOUBLE_COLON; - } - } elseif (!(\PHP_MAJOR_VERSION >= 7 && in_array($id_start_ci, $builtin_types))){ - if ($classes === null) { - $classes = $this->getClasses(); - } - if (isset($classes[$id_start_ci])) { - $id_start = $classes[$id_start_ci]; - } - if($id_start[0] !== '\\'){ - $id_start = $nsf . '\\' . $id_start; - } - } - } - - $code .= $id_start . $id_name . $token[1]; - $state = $token[0] === T_DOUBLE_COLON ? 'ignore_next' : $lastState; - break; - default: - if($id_start !== '\\' && !defined($id_start)){ - if($constants === null){ - $constants = $this->getConstants(); - } - if(isset($constants[$id_start])){ - $id_start = $constants[$id_start]; - } elseif($context === 'new'){ - if(in_array($id_start_ci, $class_keywords)) { - if (!$inside_structure) { - $isUsingScope = true; - } - } else { - if ($classes === null) { - $classes = $this->getClasses(); - } - if (isset($classes[$id_start_ci])) { - $id_start = $classes[$id_start_ci]; - } - if ($id_start[0] !== '\\') { - $id_start = $nsf . '\\' . $id_start; - } - } - } elseif($context === 'use' || - $context === 'instanceof' || - $context === 'args' || - $context === 'return_type' || - $context === 'extends' || - $context === 'root' - ){ - if(in_array($id_start_ci, $class_keywords)){ - if (!$inside_structure && !$id_start_ci === 'static') { - $isUsingScope = true; - } - } elseif (!(\PHP_MAJOR_VERSION >= 7 && in_array($id_start_ci, $builtin_types))){ - if($classes === null){ - $classes = $this->getClasses(); - } - if(isset($classes[$id_start_ci])){ - $id_start = $classes[$id_start_ci]; - } - if($id_start[0] !== '\\'){ - $id_start = $nsf . '\\' . $id_start; - } - } - } - } - $code .= $id_start . $id_name; - $state = $lastState; - $i--;//reprocess last token - } - break; - case 'anonymous': - switch ($token[0]) { - case T_NS_SEPARATOR: - case T_STRING: - $id_start = $token[1]; - $id_start_ci = strtolower($id_start); - $id_name = ''; - $state = 'id_name'; - $context = 'extends'; - $lastState = 'anonymous'; - break; - case '{': - $state = 'closure'; - if (!$inside_structure) { - $inside_structure = true; - $inside_structure_mark = $open; - } - $i--; - break; - default: - $code .= is_array($token) ? $token[1] : $token; - } - break; - } - } - - if ($isShortClosure) { - $this->useVariables = $this->getStaticVariables(); - } else { - $this->useVariables = empty($use) ? $use : array_intersect_key($this->getStaticVariables(), array_flip($use)); - } - - $this->isShortClosure = $isShortClosure; - $this->isBindingRequired = $isUsingThisObject; - $this->isScopeRequired = $isUsingScope; - $this->code = $code; - - return $this->code; - } - - /** - * @return array - */ - private static function getBuiltinTypes() - { - // PHP 5 - if (\PHP_MAJOR_VERSION === 5) { - return ['array', 'callable']; - } - - // PHP 8 - if (\PHP_MAJOR_VERSION === 8) { - return ['array', 'callable', 'string', 'int', 'bool', 'float', 'iterable', 'void', 'object', 'mixed', 'false', 'null']; - } - - // PHP 7 - switch (\PHP_MINOR_VERSION) { - case 0: - return ['array', 'callable', 'string', 'int', 'bool', 'float']; - case 1: - return ['array', 'callable', 'string', 'int', 'bool', 'float', 'iterable', 'void']; - default: - return ['array', 'callable', 'string', 'int', 'bool', 'float', 'iterable', 'void', 'object']; - } - } - - /** - * @return array - */ - public function getUseVariables() - { - if($this->useVariables !== null){ - return $this->useVariables; - } - - $tokens = $this->getTokens(); - $use = array(); - $state = 'start'; - - foreach ($tokens as &$token) { - $is_array = is_array($token); - - switch ($state) { - case 'start': - if ($is_array && $token[0] === T_USE) { - $state = 'use'; - } - break; - case 'use': - if ($is_array) { - if ($token[0] === T_VARIABLE) { - $use[] = substr($token[1], 1); - } - } elseif ($token == ')') { - break 2; - } - break; - } - } - - $this->useVariables = empty($use) ? $use : array_intersect_key($this->getStaticVariables(), array_flip($use)); - - return $this->useVariables; - } - - /** - * return bool - */ - public function isBindingRequired() - { - if($this->isBindingRequired === null){ - $this->getCode(); - } - - return $this->isBindingRequired; - } - - /** - * return bool - */ - public function isScopeRequired() - { - if($this->isScopeRequired === null){ - $this->getCode(); - } - - return $this->isScopeRequired; - } - - /** - * @return string - */ - protected function getHashedFileName() - { - if ($this->hashedName === null) { - $this->hashedName = sha1($this->getFileName()); - } - - return $this->hashedName; - } - - /** - * @return array - */ - protected function getFileTokens() - { - $key = $this->getHashedFileName(); - - if (!isset(static::$files[$key])) { - static::$files[$key] = token_get_all(file_get_contents($this->getFileName())); - } - - return static::$files[$key]; - } - - /** - * @return array - */ - protected function getTokens() - { - if ($this->tokens === null) { - $tokens = $this->getFileTokens(); - $startLine = $this->getStartLine(); - $endLine = $this->getEndLine(); - $results = array(); - $start = false; - - foreach ($tokens as &$token) { - if (!is_array($token)) { - if ($start) { - $results[] = $token; - } - - continue; - } - - $line = $token[2]; - - if ($line <= $endLine) { - if ($line >= $startLine) { - $start = true; - $results[] = $token; - } - - continue; - } - - break; - } - - $this->tokens = $results; - } - - return $this->tokens; - } - - /** - * @return array - */ - protected function getClasses() - { - $key = $this->getHashedFileName(); - - if (!isset(static::$classes[$key])) { - $this->fetchItems(); - } - - return static::$classes[$key]; - } - - /** - * @return array - */ - protected function getFunctions() - { - $key = $this->getHashedFileName(); - - if (!isset(static::$functions[$key])) { - $this->fetchItems(); - } - - return static::$functions[$key]; - } - - /** - * @return array - */ - protected function getConstants() - { - $key = $this->getHashedFileName(); - - if (!isset(static::$constants[$key])) { - $this->fetchItems(); - } - - return static::$constants[$key]; - } - - /** - * @return array - */ - protected function getStructures() - { - $key = $this->getHashedFileName(); - - if (!isset(static::$structures[$key])) { - $this->fetchItems(); - } - - return static::$structures[$key]; - } - - protected function fetchItems() - { - $key = $this->getHashedFileName(); - - $classes = array(); - $functions = array(); - $constants = array(); - $structures = array(); - $tokens = $this->getFileTokens(); - - $open = 0; - $state = 'start'; - $lastState = ''; - $prefix = ''; - $name = ''; - $alias = ''; - $isFunc = $isConst = false; - - $startLine = $endLine = 0; - $structType = $structName = ''; - $structIgnore = false; - - foreach ($tokens as $token) { - - switch ($state) { - case 'start': - switch ($token[0]) { - case T_CLASS: - case T_INTERFACE: - case T_TRAIT: - $state = 'before_structure'; - $startLine = $token[2]; - $structType = $token[0] == T_CLASS - ? 'class' - : ($token[0] == T_INTERFACE ? 'interface' : 'trait'); - break; - case T_USE: - $state = 'use'; - $prefix = $name = $alias = ''; - $isFunc = $isConst = false; - break; - case T_FUNCTION: - $state = 'structure'; - $structIgnore = true; - break; - case T_NEW: - $state = 'new'; - break; - case T_OBJECT_OPERATOR: - case T_DOUBLE_COLON: - $state = 'invoke'; - break; - } - break; - case 'use': - switch ($token[0]) { - case T_FUNCTION: - $isFunc = true; - break; - case T_CONST: - $isConst = true; - break; - case T_NS_SEPARATOR: - $name .= $token[1]; - break; - case T_STRING: - $name .= $token[1]; - $alias = $token[1]; - break; - case T_NAME_QUALIFIED: - $name .= $token[1]; - $pieces = explode('\\', $token[1]); - $alias = end($pieces); - break; - case T_AS: - $lastState = 'use'; - $state = 'alias'; - break; - case '{': - $prefix = $name; - $name = $alias = ''; - $state = 'use-group'; - break; - case ',': - case ';': - if ($name === '' || $name[0] !== '\\') { - $name = '\\' . $name; - } - - if ($alias !== '') { - if ($isFunc) { - $functions[strtolower($alias)] = $name; - } elseif ($isConst) { - $constants[$alias] = $name; - } else { - $classes[strtolower($alias)] = $name; - } - } - $name = $alias = ''; - $state = $token === ';' ? 'start' : 'use'; - break; - } - break; - case 'use-group': - switch ($token[0]) { - case T_NS_SEPARATOR: - $name .= $token[1]; - break; - case T_NAME_QUALIFIED: - $name .= $token[1]; - $pieces = explode('\\', $token[1]); - $alias = end($pieces); - break; - case T_STRING: - $name .= $token[1]; - $alias = $token[1]; - break; - case T_AS: - $lastState = 'use-group'; - $state = 'alias'; - break; - case ',': - case '}': - - if ($prefix === '' || $prefix[0] !== '\\') { - $prefix = '\\' . $prefix; - } - - if ($alias !== '') { - if ($isFunc) { - $functions[strtolower($alias)] = $prefix . $name; - } elseif ($isConst) { - $constants[$alias] = $prefix . $name; - } else { - $classes[strtolower($alias)] = $prefix . $name; - } - } - $name = $alias = ''; - $state = $token === '}' ? 'use' : 'use-group'; - break; - } - break; - case 'alias': - if ($token[0] === T_STRING) { - $alias = $token[1]; - $state = $lastState; - } - break; - case 'new': - switch ($token[0]) { - case T_WHITESPACE: - case T_COMMENT: - case T_DOC_COMMENT: - break 2; - case T_CLASS: - $state = 'structure'; - $structIgnore = true; - break; - default: - $state = 'start'; - } - break; - case 'invoke': - switch ($token[0]) { - case T_WHITESPACE: - case T_COMMENT: - case T_DOC_COMMENT: - break 2; - default: - $state = 'start'; - } - break; - case 'before_structure': - if ($token[0] == T_STRING) { - $structName = $token[1]; - $state = 'structure'; - } - break; - case 'structure': - switch ($token[0]) { - case '{': - case T_CURLY_OPEN: - case T_DOLLAR_OPEN_CURLY_BRACES: - $open++; - break; - case '}': - if (--$open == 0) { - if(!$structIgnore){ - $structures[] = array( - 'type' => $structType, - 'name' => $structName, - 'start' => $startLine, - 'end' => $endLine, - ); - } - $structIgnore = false; - $state = 'start'; - } - break; - default: - if (is_array($token)) { - $endLine = $token[2]; - } - } - break; - } - } - - static::$classes[$key] = $classes; - static::$functions[$key] = $functions; - static::$constants[$key] = $constants; - static::$structures[$key] = $structures; - } - - private function parseNameQualified($token) - { - $pieces = explode('\\', $token); - - $id_start = array_shift($pieces); - - $id_start_ci = strtolower($id_start); - - $id_name = '\\' . implode('\\', $pieces); - - return [$id_start, $id_start_ci, $id_name]; - } -} diff --git a/vendor/opis/closure/src/SecurityException.php b/vendor/opis/closure/src/SecurityException.php deleted file mode 100644 index b65f5cb..0000000 --- a/vendor/opis/closure/src/SecurityException.php +++ /dev/null @@ -1,18 +0,0 @@ -secret = $secret; - } - - /** - * @inheritdoc - */ - public function sign($closure) - { - return array( - 'closure' => $closure, - 'hash' => base64_encode(hash_hmac('sha256', $closure, $this->secret, true)), - ); - } - - /** - * @inheritdoc - */ - public function verify(array $data) - { - return base64_encode(hash_hmac('sha256', $data['closure'], $this->secret, true)) === $data['hash']; - } -} \ No newline at end of file diff --git a/vendor/opis/closure/src/SelfReference.php b/vendor/opis/closure/src/SelfReference.php deleted file mode 100644 index 425edf2..0000000 --- a/vendor/opis/closure/src/SelfReference.php +++ /dev/null @@ -1,31 +0,0 @@ -hash = $hash; - } -} \ No newline at end of file diff --git a/vendor/opis/closure/src/SerializableClosure.php b/vendor/opis/closure/src/SerializableClosure.php deleted file mode 100644 index 1025ff5..0000000 --- a/vendor/opis/closure/src/SerializableClosure.php +++ /dev/null @@ -1,678 +0,0 @@ -closure = $closure; - if (static::$context !== null) { - $this->scope = static::$context->scope; - $this->scope->toserialize++; - } - } - - /** - * Get the Closure object - * - * @return Closure The wrapped closure - */ - public function getClosure() - { - return $this->closure; - } - - /** - * Get the reflector for closure - * - * @return ReflectionClosure - */ - public function getReflector() - { - if ($this->reflector === null) { - $this->reflector = new ReflectionClosure($this->closure); - $this->code = null; - } - - return $this->reflector; - } - - /** - * Implementation of magic method __invoke() - */ - public function __invoke() - { - return call_user_func_array($this->closure, func_get_args()); - } - - /** - * Implementation of Serializable::serialize() - * - * @return string The serialized closure - */ - public function serialize() - { - if ($this->scope === null) { - $this->scope = new ClosureScope(); - $this->scope->toserialize++; - } - - $this->scope->serializations++; - - $scope = $object = null; - $reflector = $this->getReflector(); - - if($reflector->isBindingRequired()){ - $object = $reflector->getClosureThis(); - static::wrapClosures($object, $this->scope); - if($scope = $reflector->getClosureScopeClass()){ - $scope = $scope->name; - } - } else { - if($scope = $reflector->getClosureScopeClass()){ - $scope = $scope->name; - } - } - - $this->reference = spl_object_hash($this->closure); - - $this->scope[$this->closure] = $this; - - $use = $this->transformUseVariables($reflector->getUseVariables()); - $code = $reflector->getCode(); - - $this->mapByReference($use); - - $ret = \serialize(array( - 'use' => $use, - 'function' => $code, - 'scope' => $scope, - 'this' => $object, - 'self' => $this->reference, - )); - - if (static::$securityProvider !== null) { - $data = static::$securityProvider->sign($ret); - $ret = '@' . $data['hash'] . '.' . $data['closure']; - } - - if (!--$this->scope->serializations && !--$this->scope->toserialize) { - $this->scope = null; - } - - return $ret; - } - - /** - * Transform the use variables before serialization. - * - * @param array $data The Closure's use variables - * @return array - */ - protected function transformUseVariables($data) - { - return $data; - } - - /** - * Implementation of Serializable::unserialize() - * - * @param string $data Serialized data - * @throws SecurityException - */ - public function unserialize($data) - { - ClosureStream::register(); - - if (static::$securityProvider !== null) { - if ($data[0] !== '@') { - throw new SecurityException("The serialized closure is not signed. ". - "Make sure you use a security provider for both serialization and unserialization."); - } - - if ($data[1] !== '{') { - $separator = strpos($data, '.'); - if ($separator === false) { - throw new SecurityException('Invalid signed closure'); - } - $hash = substr($data, 1, $separator - 1); - $closure = substr($data, $separator + 1); - - $data = ['hash' => $hash, 'closure' => $closure]; - - unset($hash, $closure); - } else { - $data = json_decode(substr($data, 1), true); - } - - if (!is_array($data) || !static::$securityProvider->verify($data)) { - throw new SecurityException("Your serialized closure might have been modified and it's unsafe to be unserialized. " . - "Make sure you use the same security provider, with the same settings, " . - "both for serialization and unserialization."); - } - - $data = $data['closure']; - } elseif ($data[0] === '@') { - if ($data[1] !== '{') { - $separator = strpos($data, '.'); - if ($separator === false) { - throw new SecurityException('Invalid signed closure'); - } - $hash = substr($data, 1, $separator - 1); - $closure = substr($data, $separator + 1); - - $data = ['hash' => $hash, 'closure' => $closure]; - - unset($hash, $closure); - } else { - $data = json_decode(substr($data, 1), true); - } - - if (!is_array($data) || !isset($data['closure']) || !isset($data['hash'])) { - throw new SecurityException('Invalid signed closure'); - } - - $data = $data['closure']; - } - - $this->code = \unserialize($data); - - // unset data - unset($data); - - $this->code['objects'] = array(); - - if ($this->code['use']) { - $this->scope = new ClosureScope(); - $this->code['use'] = $this->resolveUseVariables($this->code['use']); - $this->mapPointers($this->code['use']); - extract($this->code['use'], EXTR_OVERWRITE | EXTR_REFS); - $this->scope = null; - } - - $this->closure = include(ClosureStream::STREAM_PROTO . '://' . $this->code['function']); - - if($this->code['this'] === $this){ - $this->code['this'] = null; - } - - $this->closure = $this->closure->bindTo($this->code['this'], $this->code['scope']); - - if(!empty($this->code['objects'])){ - foreach ($this->code['objects'] as $item){ - $item['property']->setValue($item['instance'], $item['object']->getClosure()); - } - } - - $this->code = $this->code['function']; - } - - /** - * Resolve the use variables after unserialization. - * - * @param array $data The Closure's transformed use variables - * @return array - */ - protected function resolveUseVariables($data) - { - return $data; - } - - /** - * Wraps a closure and sets the serialization context (if any) - * - * @param Closure $closure Closure to be wrapped - * - * @return self The wrapped closure - */ - public static function from(Closure $closure) - { - if (static::$context === null) { - $instance = new static($closure); - } elseif (isset(static::$context->scope[$closure])) { - $instance = static::$context->scope[$closure]; - } else { - $instance = new static($closure); - static::$context->scope[$closure] = $instance; - } - - return $instance; - } - - /** - * Increments the context lock counter or creates a new context if none exist - */ - public static function enterContext() - { - if (static::$context === null) { - static::$context = new ClosureContext(); - } - - static::$context->locks++; - } - - /** - * Decrements the context lock counter and destroy the context when it reaches to 0 - */ - public static function exitContext() - { - if (static::$context !== null && !--static::$context->locks) { - static::$context = null; - } - } - - /** - * @param string $secret - */ - public static function setSecretKey($secret) - { - if(static::$securityProvider === null){ - static::$securityProvider = new SecurityProvider($secret); - } - } - - /** - * @param ISecurityProvider $securityProvider - */ - public static function addSecurityProvider(ISecurityProvider $securityProvider) - { - static::$securityProvider = $securityProvider; - } - - /** - * Remove security provider - */ - public static function removeSecurityProvider() - { - static::$securityProvider = null; - } - - /** - * @return null|ISecurityProvider - */ - public static function getSecurityProvider() - { - return static::$securityProvider; - } - - /** - * Wrap closures - * - * @internal - * @param $data - * @param ClosureScope|SplObjectStorage|null $storage - */ - public static function wrapClosures(&$data, SplObjectStorage $storage = null) - { - if($storage === null){ - $storage = static::$context->scope; - } - - if($data instanceof Closure){ - $data = static::from($data); - } elseif (is_array($data)){ - if(isset($data[self::ARRAY_RECURSIVE_KEY])){ - return; - } - $data[self::ARRAY_RECURSIVE_KEY] = true; - foreach ($data as $key => &$value){ - if($key === self::ARRAY_RECURSIVE_KEY){ - continue; - } - static::wrapClosures($value, $storage); - } - unset($value); - unset($data[self::ARRAY_RECURSIVE_KEY]); - } elseif($data instanceof \stdClass){ - if(isset($storage[$data])){ - $data = $storage[$data]; - return; - } - $data = $storage[$data] = clone($data); - foreach ($data as &$value){ - static::wrapClosures($value, $storage); - } - unset($value); - } elseif (is_object($data) && ! $data instanceof static){ - if(isset($storage[$data])){ - $data = $storage[$data]; - return; - } - $instance = $data; - $reflection = new ReflectionObject($instance); - if(!$reflection->isUserDefined()){ - $storage[$instance] = $data; - return; - } - $storage[$instance] = $data = $reflection->newInstanceWithoutConstructor(); - - do{ - if(!$reflection->isUserDefined()){ - break; - } - foreach ($reflection->getProperties() as $property){ - if($property->isStatic() || !$property->getDeclaringClass()->isUserDefined()){ - continue; - } - $property->setAccessible(true); - if (PHP_VERSION >= 7.4 && !$property->isInitialized($instance)) { - continue; - } - $value = $property->getValue($instance); - if(is_array($value) || is_object($value)){ - static::wrapClosures($value, $storage); - } - $property->setValue($data, $value); - }; - } while($reflection = $reflection->getParentClass()); - } - } - - /** - * Unwrap closures - * - * @internal - * @param $data - * @param SplObjectStorage|null $storage - */ - public static function unwrapClosures(&$data, SplObjectStorage $storage = null) - { - if($storage === null){ - $storage = static::$context->scope; - } - - if($data instanceof static){ - $data = $data->getClosure(); - } elseif (is_array($data)){ - if(isset($data[self::ARRAY_RECURSIVE_KEY])){ - return; - } - $data[self::ARRAY_RECURSIVE_KEY] = true; - foreach ($data as $key => &$value){ - if($key === self::ARRAY_RECURSIVE_KEY){ - continue; - } - static::unwrapClosures($value, $storage); - } - unset($data[self::ARRAY_RECURSIVE_KEY]); - }elseif ($data instanceof \stdClass){ - if(isset($storage[$data])){ - return; - } - $storage[$data] = true; - foreach ($data as &$property){ - static::unwrapClosures($property, $storage); - } - } elseif (is_object($data) && !($data instanceof Closure)){ - if(isset($storage[$data])){ - return; - } - $storage[$data] = true; - $reflection = new ReflectionObject($data); - - do{ - if(!$reflection->isUserDefined()){ - break; - } - foreach ($reflection->getProperties() as $property){ - if($property->isStatic() || !$property->getDeclaringClass()->isUserDefined()){ - continue; - } - $property->setAccessible(true); - if (PHP_VERSION >= 7.4 && !$property->isInitialized($data)) { - continue; - } - $value = $property->getValue($data); - if(is_array($value) || is_object($value)){ - static::unwrapClosures($value, $storage); - $property->setValue($data, $value); - } - }; - } while($reflection = $reflection->getParentClass()); - } - } - - /** - * Creates a new closure from arbitrary code, - * emulating create_function, but without using eval - * - * @param string$args - * @param string $code - * @return Closure - */ - public static function createClosure($args, $code) - { - ClosureStream::register(); - return include(ClosureStream::STREAM_PROTO . '://function(' . $args. '){' . $code . '};'); - } - - /** - * Internal method used to map closure pointers - * @internal - * @param $data - */ - protected function mapPointers(&$data) - { - $scope = $this->scope; - - if ($data instanceof static) { - $data = &$data->closure; - } elseif (is_array($data)) { - if(isset($data[self::ARRAY_RECURSIVE_KEY])){ - return; - } - $data[self::ARRAY_RECURSIVE_KEY] = true; - foreach ($data as $key => &$value){ - if($key === self::ARRAY_RECURSIVE_KEY){ - continue; - } elseif ($value instanceof static) { - $data[$key] = &$value->closure; - } elseif ($value instanceof SelfReference && $value->hash === $this->code['self']){ - $data[$key] = &$this->closure; - } else { - $this->mapPointers($value); - } - } - unset($value); - unset($data[self::ARRAY_RECURSIVE_KEY]); - } elseif ($data instanceof \stdClass) { - if(isset($scope[$data])){ - return; - } - $scope[$data] = true; - foreach ($data as $key => &$value){ - if ($value instanceof SelfReference && $value->hash === $this->code['self']){ - $data->{$key} = &$this->closure; - } elseif(is_array($value) || is_object($value)) { - $this->mapPointers($value); - } - } - unset($value); - } elseif (is_object($data) && !($data instanceof Closure)){ - if(isset($scope[$data])){ - return; - } - $scope[$data] = true; - $reflection = new ReflectionObject($data); - do{ - if(!$reflection->isUserDefined()){ - break; - } - foreach ($reflection->getProperties() as $property){ - if($property->isStatic() || !$property->getDeclaringClass()->isUserDefined()){ - continue; - } - $property->setAccessible(true); - if (PHP_VERSION >= 7.4 && !$property->isInitialized($data)) { - continue; - } - $item = $property->getValue($data); - if ($item instanceof SerializableClosure || ($item instanceof SelfReference && $item->hash === $this->code['self'])) { - $this->code['objects'][] = array( - 'instance' => $data, - 'property' => $property, - 'object' => $item instanceof SelfReference ? $this : $item, - ); - } elseif (is_array($item) || is_object($item)) { - $this->mapPointers($item); - $property->setValue($data, $item); - } - } - } while($reflection = $reflection->getParentClass()); - } - } - - /** - * Internal method used to map closures by reference - * - * @internal - * @param mixed &$data - */ - protected function mapByReference(&$data) - { - if ($data instanceof Closure) { - if($data === $this->closure){ - $data = new SelfReference($this->reference); - return; - } - - if (isset($this->scope[$data])) { - $data = $this->scope[$data]; - return; - } - - $instance = new static($data); - - if (static::$context !== null) { - static::$context->scope->toserialize--; - } else { - $instance->scope = $this->scope; - } - - $data = $this->scope[$data] = $instance; - } elseif (is_array($data)) { - if(isset($data[self::ARRAY_RECURSIVE_KEY])){ - return; - } - $data[self::ARRAY_RECURSIVE_KEY] = true; - foreach ($data as $key => &$value){ - if($key === self::ARRAY_RECURSIVE_KEY){ - continue; - } - $this->mapByReference($value); - } - unset($value); - unset($data[self::ARRAY_RECURSIVE_KEY]); - } elseif ($data instanceof \stdClass) { - if(isset($this->scope[$data])){ - $data = $this->scope[$data]; - return; - } - $instance = $data; - $this->scope[$instance] = $data = clone($data); - - foreach ($data as &$value){ - $this->mapByReference($value); - } - unset($value); - } elseif (is_object($data) && !$data instanceof SerializableClosure){ - if(isset($this->scope[$data])){ - $data = $this->scope[$data]; - return; - } - - $instance = $data; - $reflection = new ReflectionObject($data); - if(!$reflection->isUserDefined()){ - $this->scope[$instance] = $data; - return; - } - $this->scope[$instance] = $data = $reflection->newInstanceWithoutConstructor(); - - do{ - if(!$reflection->isUserDefined()){ - break; - } - foreach ($reflection->getProperties() as $property){ - if($property->isStatic() || !$property->getDeclaringClass()->isUserDefined()){ - continue; - } - $property->setAccessible(true); - if (PHP_VERSION >= 7.4 && !$property->isInitialized($instance)) { - continue; - } - $value = $property->getValue($instance); - if(is_array($value) || is_object($value)){ - $this->mapByReference($value); - } - $property->setValue($data, $value); - } - } while($reflection = $reflection->getParentClass()); - } - } - -} diff --git a/vendor/symfony/translation/Loader/ArrayLoader.php b/vendor/symfony/translation/Loader/ArrayLoader.php index 0758da8..feed0de 100644 --- a/vendor/symfony/translation/Loader/ArrayLoader.php +++ b/vendor/symfony/translation/Loader/ArrayLoader.php @@ -46,9 +46,11 @@ class ArrayLoader implements LoaderInterface foreach ($messages as $key => $value) { if (\is_array($value)) { foreach ($this->flatten($value) as $k => $v) { - $result[$key.'.'.$k] = $v; + if (null !== $v) { + $result[$key.'.'.$k] = $v; + } } - } else { + } elseif (null !== $value) { $result[$key] = $value; } } diff --git a/vendor/topthink/think-cache/LICENSE b/vendor/topthink/think-cache/LICENSE deleted file mode 100644 index 8dada3e..0000000 --- a/vendor/topthink/think-cache/LICENSE +++ /dev/null @@ -1,201 +0,0 @@ - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "{}" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright {yyyy} {name of copyright owner} - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. diff --git a/vendor/topthink/think-cache/README.md b/vendor/topthink/think-cache/README.md deleted file mode 100644 index f717901..0000000 --- a/vendor/topthink/think-cache/README.md +++ /dev/null @@ -1,87 +0,0 @@ -# think-cache - -用于PHP缓存管理(PHP 7.1+),支持`PSR-6`及`PSR-16`缓存规范。 - -主要特性包括: - -* 支持多缓存通道设置及切换 -* 支持缓存数据递增/递减 -* 支持门面调用 -* 内置File/Redis/Memcache/Memcached/Wincache -* 支持缓存标签 -* 支持闭包数据 -* 支持`PSR-6`及`PSR-16`缓存规范 - -## 安装 -~~~ -composer require topthink/think-cache -~~~ - -## 用法: -~~~php -use think\facade\Cache; - -// 缓存配置 -Cache::config([ - 'default' => 'file', - 'stores' => [ - 'file' => [ - 'type' => 'File', - // 缓存保存目录 - 'path' => './cache/', - // 缓存前缀 - 'prefix' => '', - // 缓存有效期 0表示永久缓存 - 'expire' => 0, - ], - 'redis' => [ - 'type' => 'redis', - 'host' => '127.0.0.1', - 'port' => 6379, - 'prefix' => '', - 'expire' => 0, - ], - ], -]); -// 设置缓存 -Cache::set('val','value',600); -// 判断缓存是否设置 -Cache::has('val'); -// 获取缓存 -Cache::get('val'); -// 删除缓存 -Cache::delete('val'); -// 清除缓存 -Cache::clear(); -// 读取并删除缓存 -Cache::pull('val'); -// 不存在则写入 -Cache::remember('val',10); - -// 对于数值类型的缓存数据可以使用 -// 缓存增+1 -Cache::inc('val'); -// 缓存增+5 -Cache::inc('val',5); -// 缓存减1 -Cache::dec('val'); -// 缓存减5 -Cache::dec('val',5); - -// 使用缓存标签 -Cache::tag('tag_name')->set('val','value',600); -// 删除某个标签下的缓存数据 -Cache::tag('tag_name')->clear(); -// 支持指定多个标签 -Cache::tag(['tag1','tag2'])->set('val2','value',600); -// 删除多个标签下的缓存数据 -Cache::tag(['tag1','tag2'])->clear(); - -// 使用多种缓存类型 -$redis = Cache::store('redis'); - -$redis->set('var','value',600); -$redis->get('var'); -~~~ - -更多内容可以参考 https://www.kancloud.cn/manual/thinkphp6_0/1037634 \ No newline at end of file diff --git a/vendor/topthink/think-cache/composer.json b/vendor/topthink/think-cache/composer.json deleted file mode 100644 index f3386e9..0000000 --- a/vendor/topthink/think-cache/composer.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "name": "topthink/think-cache", - "description": "Cache Manager", - "license": "Apache-2.0", - "authors": [ - { - "name": "liu21st", - "email": "liu21st@gmail.com" - } - ], - "require": { - "php": ">=7.1.0", - "psr/cache": "~1.0", - "topthink/think-container": "~2.0", - "psr/simple-cache": "^1.0", - "opis/closure": "^3.1" - }, - "autoload": { - "psr-4": { - "think\\": "src" - }, - "files": [] - } -} \ No newline at end of file diff --git a/vendor/topthink/think-cache/src/CacheManager.php b/vendor/topthink/think-cache/src/CacheManager.php deleted file mode 100644 index f4373d3..0000000 --- a/vendor/topthink/think-cache/src/CacheManager.php +++ /dev/null @@ -1,273 +0,0 @@ - -// +---------------------------------------------------------------------- -declare (strict_types = 1); - -namespace think; - -use Psr\Cache\CacheItemInterface; -use Psr\Cache\CacheItemPoolInterface; -use think\cache\Driver; -use think\Container; -use think\exception\InvalidArgumentException; -use think\cache\CacheItem; - -/** - * 缓存管理类 - * @mixin Driver - */ -class CacheManager implements CacheItemPoolInterface -{ - /** - * 缓存队列 - * @var array - */ - protected $data = []; - - /** - * 延期保存的缓存队列 - * @var array - */ - protected $deferred = []; - - /** - * 缓存实例 - * @var array - */ - protected $instance = []; - - /** - * 配置参数 - * @var array - */ - protected $config = []; - - /** - * 初始化 - * @access public - * @param array $config 配置参数 - * @return $this - */ - public function init(array $config = []) - { - $this->config = $config; - return $this; - } - - /** - * 连接或者切换缓存 - * @access public - * @param string $name 连接配置名 - * @param bool $force 强制重新连接 - * @return Driver - */ - public function store(string $name = '', bool $force = false): Driver - { - if ('' == $name) { - $name = $this->config['default'] ?? 'file'; - } - - if ($force || !isset($this->instance[$name])) { - if (!isset($this->config['stores'][$name])) { - throw new InvalidArgumentException('Undefined cache config:' . $name); - } - - $options = $this->config['stores'][$name]; - - $this->instance[$name] = $this->connect($options); - } - - return $this->instance[$name]; - } - - /** - * 连接缓存 - * @access public - * @param array $options 连接参数 - * @param string $name 连接配置名 - * @return Driver - */ - public function connect(array $options, string $name = ''): Driver - { - if ($name && isset($this->instance[$name])) { - return $this->instance[$name]; - } - - $type = !empty($options['type']) ? $options['type'] : 'File'; - - $handler = Container::factory($type, '\\think\\cache\\driver\\', $options); - - if ($name) { - $this->instance[$name] = $handler; - } - - return $handler; - } - - /** - * 设置配置 - * @access public - * @param array $config 配置参数 - * @return void - */ - public function config(array $config): void - { - $this->config = array_merge($this->config, $config); - } - - /** - * 返回「键」对应的一个缓存项。 - * @access public - * @param string $key 缓存标识 - * @return CacheItemInterface - * @throws InvalidArgumentException - */ - public function getItem($key): CacheItem - { - if (isset($this->data[$key])) { - return $this->data[$key]; - } - - $cacheItem = new CacheItem($key); - - if ($this->has($key)) { - $cacheItem->set($this->get($key)); - } - - $this->data[$key] = $cacheItem; - - return $cacheItem; - } - - /** - * 返回一个可供遍历的缓存项集合。 - * @access public - * @param array $keys - * @return array|\Traversable - * @throws InvalidArgumentException - */ - public function getItems(array $keys = []): array - { - $result = []; - foreach ($keys as $key) { - $result[] = $this->getItem($key); - } - - return $result; - } - - /** - * 检查缓存系统中是否有「键」对应的缓存项。 - * @access public - * @param string $key - * @return bool - * @throws InvalidArgumentException - */ - public function hasItem($key): bool - { - return $this->store()->has($key); - } - - /** - * 清空缓冲池 - * @access public - * @return bool - */ - public function clear(): bool - { - return $this->store()->clear(); - } - - /** - * 从缓冲池里移除某个缓存项 - * @access public - * @param string $key - * @return bool - * @throws InvalidArgumentException - */ - public function deleteItem($key): bool - { - return $this->store()->delete($key); - } - - /** - * 从缓冲池里移除多个缓存项 - * @access public - * @param array $keys - * @return bool - * @throws InvalidArgumentException - */ - public function deleteItems(array $keys): bool - { - foreach ($keys as $key) { - $this->store()->delete($key); - } - - return true; - } - - /** - * 立刻为「CacheItemInterface」对象做数据持久化。 - * @access public - * @param CacheItemInterface $item - * @return bool - */ - public function save(CacheItemInterface $item): bool - { - if ($item->getKey()) { - return $this->store()->set($item->getKey(), $item->get(), $item->getExpire()); - } - - return false; - } - - /** - * 稍后为「CacheItemInterface」对象做数据持久化。 - * @access public - * @param CacheItemInterface $item - * @return bool - */ - public function saveDeferred(CacheItemInterface $item): bool - { - $this->deferred[$item->getKey()] = $item; - return true; - } - - /** - * 提交所有的正在队列里等待的请求到数据持久层,配合 `saveDeferred()` 使用 - * @access public - * @return bool - */ - public function commit(): bool - { - foreach ($this->deferred as $key => $item) { - $result = $this->save($item); - unset($this->deferred[$key]); - - if (false === $result) { - return false; - } - } - return true; - } - - public function __call($method, $args) - { - return call_user_func_array([$this->store(), $method], $args); - } - - public function __destruct() - { - if (!empty($this->deferred)) { - $this->commit(); - } - } - -} diff --git a/vendor/topthink/think-cache/src/cache/CacheItem.php b/vendor/topthink/think-cache/src/cache/CacheItem.php deleted file mode 100644 index d8c8d8e..0000000 --- a/vendor/topthink/think-cache/src/cache/CacheItem.php +++ /dev/null @@ -1,210 +0,0 @@ - -// +---------------------------------------------------------------------- -declare (strict_types = 1); - -namespace think\cache; - -use DateInterval; -use DateTime; -use DateTimeInterface; -use Psr\Cache\CacheItemInterface; -use think\cache\exception\InvalidArgumentException; - -/** - * CacheItem实现类 - */ -class CacheItem implements CacheItemInterface -{ - /** - * 缓存Key - * @var string - */ - protected $key; - - /** - * 缓存内容 - * @var mixed - */ - protected $value; - - /** - * 过期时间 - * @var int|DateTimeInterface - */ - protected $expire; - - /** - * 缓存tag - * @var string - */ - protected $tag; - - /** - * 缓存是否命中 - * @var bool - */ - protected $isHit = false; - - public function __construct(string $key = null) - { - $this->key = $key; - } - - /** - * 为此缓存项设置「键」 - * @access public - * @param string $key - * @return $this - */ - public function setKey(string $key) - { - $this->key = $key; - return $this; - } - - /** - * 返回当前缓存项的「键」 - * @access public - * @return string - */ - public function getKey() - { - return $this->key; - } - - /** - * 返回当前缓存项的有效期 - * @access public - * @return DateTimeInterface|int|null - */ - public function getExpire() - { - if ($this->expire instanceof DateTimeInterface) { - return $this->expire; - } - - return $this->expire ? $this->expire - time() : null; - } - - /** - * 获取缓存Tag - * @access public - * @return string - */ - public function getTag() - { - return $this->tag; - } - - /** - * 凭借此缓存项的「键」从缓存系统里面取出缓存项 - * @access public - * @return mixed - */ - public function get() - { - return $this->value; - } - - /** - * 确认缓存项的检查是否命中 - * @access public - * @return bool - */ - public function isHit(): bool - { - return $this->isHit; - } - - /** - * 为此缓存项设置「值」 - * @access public - * @param mixed $value - * @return $this - */ - public function set($value) - { - $this->value = $value; - $this->isHit = true; - return $this; - } - - /** - * 为此缓存项设置所属标签 - * @access public - * @param string $tag - * @return $this - */ - public function tag(string $tag = null) - { - $this->tag = $tag; - return $this; - } - - /** - * 设置缓存项的有效期 - * @access public - * @param mixed $expire - * @return $this - */ - public function expire($expire) - { - if (is_null($expire)) { - $this->expire = null; - } elseif (is_numeric($expire) || $expire instanceof DateInterval) { - $this->expiresAfter($expire); - } elseif ($expire instanceof DateTimeInterface) { - $this->expire = $expire; - } else { - throw new InvalidArgumentException('not support datetime'); - } - - return $this; - } - - /** - * 设置缓存项的准确过期时间点 - * @access public - * @param DateTimeInterface $expiration - * @return $this - */ - public function expiresAt($expiration) - { - if ($expiration instanceof DateTimeInterface) { - $this->expire = $expiration; - } else { - throw new InvalidArgumentException('not support datetime'); - } - - return $this; - } - - /** - * 设置缓存项的过期时间 - * @access public - * @param int|DateInterval $timeInterval - * @return $this - * @throws InvalidArgumentException - */ - public function expiresAfter($timeInterval) - { - if ($timeInterval instanceof DateInterval) { - $this->expire = (int) DateTime::createFromFormat('U', (string) time())->add($timeInterval)->format('U'); - } elseif (is_numeric($timeInterval)) { - $this->expire = $timeInterval + time(); - } else { - throw new InvalidArgumentException('not support datetime'); - } - - return $this; - } - -} diff --git a/vendor/topthink/think-cache/src/cache/Driver.php b/vendor/topthink/think-cache/src/cache/Driver.php deleted file mode 100644 index 1160374..0000000 --- a/vendor/topthink/think-cache/src/cache/Driver.php +++ /dev/null @@ -1,349 +0,0 @@ - -// +---------------------------------------------------------------------- -declare (strict_types = 1); - -namespace think\cache; - -use DateInterval; -use DateTime; -use DateTimeInterface; -use Opis\Closure\SerializableClosure; -use Psr\SimpleCache\CacheInterface; -use think\exception\InvalidArgumentException; -use think\Container; - -/** - * 缓存基础类 - */ -abstract class Driver implements CacheInterface -{ - /** - * 驱动句柄 - * @var object - */ - protected $handler = null; - - /** - * 缓存读取次数 - * @var integer - */ - protected $readTimes = 0; - - /** - * 缓存写入次数 - * @var integer - */ - protected $writeTimes = 0; - - /** - * 缓存参数 - * @var array - */ - protected $options = []; - - /** - * 缓存标签 - * @var array - */ - protected $tag = []; - - /** - * 获取有效期 - * @access protected - * @param integer|DateTimeInterface|DateInterval $expire 有效期 - * @return int - */ - protected function getExpireTime($expire): int - { - if ($expire instanceof DateTimeInterface) { - $expire = $expire->getTimestamp() - time(); - } elseif ($expire instanceof DateInterval) { - $expire = DateTime::createFromFormat('U', (string) time()) - ->add($expire) - ->format('U') - time(); - } - - return (int) $expire; - } - - /** - * 获取实际的缓存标识 - * @access public - * @param string $name 缓存名 - * @return string - */ - public function getCacheKey(string $name): string - { - return $this->options['prefix'] . $name; - } - - /** - * 读取缓存并删除 - * @access public - * @param string $name 缓存变量名 - * @return mixed - */ - public function pull(string $name) - { - $result = $this->get($name, false); - - if ($result) { - $this->delete($name); - return $result; - } - } - - /** - * 追加(数组)缓存 - * @access public - * @param string $name 缓存变量名 - * @param mixed $value 存储数据 - * @return void - */ - public function push(string $name, $value): void - { - $item = $this->get($name, []); - - if (!is_array($item)) { - throw new InvalidArgumentException('only array cache can be push'); - } - - $item[] = $value; - - if (count($item) > 1000) { - array_shift($item); - } - - $item = array_unique($item); - - $this->set($name, $item); - } - - /** - * 如果不存在则写入缓存 - * @access public - * @param string $name 缓存变量名 - * @param mixed $value 存储数据 - * @param int $expire 有效时间 0为永久 - * @return mixed - */ - public function remember(string $name, $value, $expire = null) - { - if ($this->has($name)) { - return $this->get($name); - } - - $time = time(); - - while ($time + 5 > time() && $this->has($name . '_lock')) { - // 存在锁定则等待 - usleep(200000); - } - - try { - // 锁定 - $this->set($name . '_lock', true); - - if ($value instanceof \Closure) { - // 获取缓存数据 - $value = Container::getInstance()->invokeFunction($value); - } - - // 缓存数据 - $this->set($name, $value, $expire); - - // 解锁 - $this->delete($name . '_lock'); - } catch (\Exception | \throwable $e) { - $this->delete($name . '_lock'); - throw $e; - } - - return $value; - } - - /** - * 缓存标签 - * @access public - * @param string|array $name 标签名 - * @return $this - */ - public function tag($name) - { - $name = (array) $name; - $key = implode('-', $name); - - if (!isset($this->tag[$key])) { - $name = array_map(function ($val) { - return $this->getTagKey($val); - }, $name); - $this->tag[$key] = new TagSet($name, $this); - } - - return $this->tag[$key]; - } - - /** - * 获取标签包含的缓存标识 - * @access public - * @param string $tag 标签标识 - * @return array - */ - public function getTagItems(string $tag): array - { - $name = $this->getTagKey($tag); - return $this->get($name, []); - } - - /** - * 获取实际标签名 - * @access public - * @param string $tag 标签名 - * @return string - */ - public function getTagKey(string $tag): string - { - return $this->options['tag_prefix'] . md5($tag); - } - - /** - * 序列化数据 - * @access protected - * @param mixed $data 缓存数据 - * @return string - */ - protected function serialize($data): string - { - $serialize = $this->options['serialize'][0] ?? function ($data) { - SerializableClosure::enterContext(); - SerializableClosure::wrapClosures($data); - $data = \serialize($data); - SerializableClosure::exitContext(); - return $data; - }; - - return $serialize($data); - } - - /** - * 反序列化数据 - * @access protected - * @param string $data 缓存数据 - * @return mixed - */ - protected function unserialize(string $data) - { - $unserialize = $this->options['serialize'][1] ?? function ($data) { - SerializableClosure::enterContext(); - $data = \unserialize($data); - SerializableClosure::unwrapClosures($data); - SerializableClosure::exitContext(); - return $data; - }; - - return $unserialize($data); - } - - /** - * 返回句柄对象,可执行其它高级方法 - * - * @access public - * @return object - */ - public function handler() - { - return $this->handler; - } - - /** - * 返回缓存读取次数 - * @access public - * @return int - */ - public function getReadTimes(): int - { - return $this->readTimes; - } - - /** - * 返回缓存写入次数 - * @access public - * @return int - */ - public function getWriteTimes(): int - { - return $this->writeTimes; - } - - /** - * 读取缓存 - * @access public - * @param iterable $keys 缓存变量名 - * @param mixed $default 默认值 - * @return iterable - * @throws InvalidArgumentException - */ - public function getMultiple($keys, $default = null): iterable - { - $result = []; - - foreach ($keys as $key) { - $result[$key] = $this->get($key, $default); - } - - return $result; - } - - /** - * 写入缓存 - * @access public - * @param iterable $values 缓存数据 - * @param null|int|\DateInterval $ttl 有效时间 0为永久 - * @return bool - */ - public function setMultiple($values, $ttl = null): bool - { - foreach ($values as $key => $val) { - $result = $this->set($key, $val, $ttl); - - if (false === $result) { - return false; - } - } - - return true; - } - - /** - * 删除缓存 - * @access public - * @param iterable $keys 缓存变量名 - * @return bool - * @throws InvalidArgumentException - */ - public function deleteMultiple($keys): bool - { - foreach ($keys as $key) { - $result = $this->delete($key); - - if (false === $result) { - return false; - } - } - - return true; - } - - public function __call($method, $args) - { - return call_user_func_array([$this->handler, $method], $args); - } -} diff --git a/vendor/topthink/think-cache/src/cache/TagSet.php b/vendor/topthink/think-cache/src/cache/TagSet.php deleted file mode 100644 index 00b27e1..0000000 --- a/vendor/topthink/think-cache/src/cache/TagSet.php +++ /dev/null @@ -1,130 +0,0 @@ - -// +---------------------------------------------------------------------- -declare (strict_types = 1); - -namespace think\cache; - -/** - * 标签集合 - */ -class TagSet -{ - /** - * 标签的缓存Key - * @var array - */ - protected $tag; - - /** - * 缓存句柄 - * @var Driver - */ - protected $handler; - - /** - * 架构函数 - * @access public - * @param array $tag 缓存标签 - * @param Driver $cache 缓存对象 - */ - public function __construct(array $tag, Driver $cache) - { - $this->tag = $tag; - $this->handler = $cache; - } - - /** - * 写入缓存 - * @access public - * @param string $name 缓存变量名 - * @param mixed $value 存储数据 - * @param integer|\DateTime $expire 有效时间(秒) - * @return bool - */ - public function set($name, $value, $expire = null): bool - { - $this->handler->set($name, $value, $expire); - - $this->append($name); - - return true; - } - - /** - * 追加缓存标识到标签 - * @access public - * @param string $name 缓存变量名 - * @return void - */ - public function append(string $name): void - { - $name = $this->handler->getCacheKey($name); - - foreach ($this->tag as $tag) { - $this->handler->push($tag, $name); - } - } - - /** - * 写入缓存 - * @access public - * @param iterable $values 缓存数据 - * @param null|int|\DateInterval $ttl 有效时间 0为永久 - * @return bool - */ - public function setMultiple($values, $ttl = null): bool - { - foreach ($values as $key => $val) { - $result = $this->set($key, $val, $ttl); - - if (false === $result) { - return false; - } - } - - return true; - } - - /** - * 如果不存在则写入缓存 - * @access public - * @param string $name 缓存变量名 - * @param mixed $value 存储数据 - * @param int $expire 有效时间 0为永久 - * @return mixed - */ - public function remember(string $name, $value, $expire = null) - { - $result = $this->handler->remember($name, $value, $expire); - - $this->append($name); - - return $result; - } - - /** - * 清除缓存 - * @access public - * @return bool - */ - public function clear(): bool - { - // 指定标签清除 - foreach ($this->tag as $tag) { - $names = $this->handler->get($tag, []); - - $this->handler->clearTag($names); - $this->handler->delete($tag); - } - - return true; - } -} diff --git a/vendor/topthink/think-cache/src/cache/driver/File.php b/vendor/topthink/think-cache/src/cache/driver/File.php deleted file mode 100644 index fe43e1f..0000000 --- a/vendor/topthink/think-cache/src/cache/driver/File.php +++ /dev/null @@ -1,286 +0,0 @@ - -// +---------------------------------------------------------------------- -declare (strict_types = 1); - -namespace think\cache\driver; - -use think\cache\Driver; - -/** - * 文件缓存类 - */ -class File extends Driver -{ - /** - * 配置参数 - * @var array - */ - protected $options = [ - 'expire' => 0, - 'cache_subdir' => true, - 'prefix' => '', - 'path' => '', - 'hash_type' => 'md5', - 'data_compress' => false, - 'tag_prefix' => 'tag:', - 'serialize' => [], - ]; - - /** - * 有效期 - * @var int|\DateTime - */ - protected $expire; - - /** - * 架构函数 - * @param array $options 参数 - */ - public function __construct(array $options = []) - { - if (!empty($options)) { - $this->options = array_merge($this->options, $options); - } - - if (substr($this->options['path'], -1) != DIRECTORY_SEPARATOR) { - $this->options['path'] .= DIRECTORY_SEPARATOR; - } - } - - /** - * 取得变量的存储文件名 - * @access public - * @param string $name 缓存变量名 - * @return string - */ - public function getCacheKey(string $name): string - { - $name = hash($this->options['hash_type'], $name); - - if ($this->options['cache_subdir']) { - // 使用子目录 - $name = substr($name, 0, 2) . DIRECTORY_SEPARATOR . substr($name, 2); - } - - if ($this->options['prefix']) { - $name = $this->options['prefix'] . DIRECTORY_SEPARATOR . $name; - } - - return $this->options['path'] . $name . '.php'; - } - - /** - * 判断缓存是否存在 - * @access public - * @param string $name 缓存变量名 - * @return bool - */ - public function has($name): bool - { - return false !== $this->get($name) ? true : false; - } - - /** - * 读取缓存 - * @access public - * @param string $name 缓存变量名 - * @param mixed $default 默认值 - * @return mixed - */ - public function get($name, $default = null) - { - $this->readTimes++; - - $filename = $this->getCacheKey($name); - - if (!is_file($filename)) { - return $default; - } - - $content = file_get_contents($filename); - $this->expire = null; - - if (false !== $content) { - $expire = (int) substr($content, 8, 12); - if (0 != $expire && time() > filemtime($filename) + $expire) { - //缓存过期删除缓存文件 - $this->unlink($filename); - return $default; - } - - $this->expire = $expire; - $content = substr($content, 32); - - if ($this->options['data_compress'] && function_exists('gzcompress')) { - //启用数据压缩 - $content = gzuncompress($content); - } - return $this->unserialize($content); - } else { - return $default; - } - } - - /** - * 写入缓存 - * @access public - * @param string $name 缓存变量名 - * @param mixed $value 存储数据 - * @param int|\DateTime $expire 有效时间 0为永久 - * @return bool - */ - public function set($name, $value, $expire = null): bool - { - $this->writeTimes++; - - if (is_null($expire)) { - $expire = $this->options['expire']; - } - - $expire = $this->getExpireTime($expire); - $filename = $this->getCacheKey($name); - - $dir = dirname($filename); - - if (!is_dir($dir)) { - try { - mkdir($dir, 0755, true); - } catch (\Exception $e) { - // 创建失败 - } - } - - $data = $this->serialize($value); - - if ($this->options['data_compress'] && function_exists('gzcompress')) { - //数据压缩 - $data = gzcompress($data, 3); - } - - $data = "\n" . $data; - $result = file_put_contents($filename, $data); - - if ($result) { - clearstatcache(); - return true; - } - - return false; - } - - /** - * 自增缓存(针对数值缓存) - * @access public - * @param string $name 缓存变量名 - * @param int $step 步长 - * @return false|int - */ - public function inc(string $name, int $step = 1) - { - if ($this->has($name)) { - $value = $this->get($name) + $step; - $expire = $this->expire; - } else { - $value = $step; - $expire = 0; - } - - return $this->set($name, $value, $expire) ? $value : false; - } - - /** - * 自减缓存(针对数值缓存) - * @access public - * @param string $name 缓存变量名 - * @param int $step 步长 - * @return false|int - */ - public function dec(string $name, int $step = 1) - { - if ($this->has($name)) { - $value = $this->get($name) - $step; - $expire = $this->expire; - } else { - $value = -$step; - $expire = 0; - } - - return $this->set($name, $value, $expire) ? $value : false; - } - - /** - * 删除缓存 - * @access public - * @param string $name 缓存变量名 - * @return bool - */ - public function delete($name): bool - { - $this->writeTimes++; - - try { - return $this->unlink($this->getCacheKey($name)); - } catch (\Exception $e) { - return false; - } - } - - /** - * 清除缓存 - * @access public - * @return bool - */ - public function clear(): bool - { - $this->writeTimes++; - - $files = (array) glob($this->options['path'] . ($this->options['prefix'] ? $this->options['prefix'] . DIRECTORY_SEPARATOR : '') . '*'); - - foreach ($files as $path) { - if (is_dir($path)) { - $matches = glob($path . DIRECTORY_SEPARATOR . '*.php'); - if (is_array($matches)) { - array_map('unlink', $matches); - } - rmdir($path); - } else { - unlink($path); - } - } - - return true; - } - - /** - * 删除缓存标签 - * @access public - * @param array $keys 缓存标识列表 - * @return void - */ - public function clearTag(array $keys): void - { - foreach ($keys as $key) { - $this->unlink($key); - } - } - - /** - * 判断文件是否存在后,删除 - * @access private - * @param string $path - * @return bool - */ - private function unlink(string $path): bool - { - return is_file($path) && unlink($path); - } - -} diff --git a/vendor/topthink/think-cache/src/cache/driver/Memcache.php b/vendor/topthink/think-cache/src/cache/driver/Memcache.php deleted file mode 100644 index d9f3578..0000000 --- a/vendor/topthink/think-cache/src/cache/driver/Memcache.php +++ /dev/null @@ -1,208 +0,0 @@ - -// +---------------------------------------------------------------------- - -namespace think\cache\driver; - -use think\cache\Driver; - -/** - * Memcache缓存类 - */ -class Memcache extends Driver -{ - /** - * 配置参数 - * @var array - */ - protected $options = [ - 'host' => '127.0.0.1', - 'port' => 11211, - 'expire' => 0, - 'timeout' => 0, // 超时时间(单位:毫秒) - 'persistent' => true, - 'prefix' => '', - 'tag_prefix' => 'tag:', - 'serialize' => [], - ]; - - /** - * 架构函数 - * @access public - * @param array $options 缓存参数 - * @throws \BadFunctionCallException - */ - public function __construct(array $options = []) - { - if (!extension_loaded('memcache')) { - throw new \BadFunctionCallException('not support: memcache'); - } - - if (!empty($options)) { - $this->options = array_merge($this->options, $options); - } - - $this->handler = new \Memcache; - - // 支持集群 - $hosts = (array) $this->options['host']; - $ports = (array) $this->options['port']; - - if (empty($ports[0])) { - $ports[0] = 11211; - } - - // 建立连接 - foreach ($hosts as $i => $host) { - $port = $ports[$i] ?? $ports[0]; - $this->options['timeout'] > 0 ? - $this->handler->addServer($host, (int) $port, $this->options['persistent'], 1, $this->options['timeout']) : - $this->handler->addServer($host, (int) $port, $this->options['persistent'], 1); - } - } - - /** - * 判断缓存 - * @access public - * @param string $name 缓存变量名 - * @return bool - */ - public function has($name): bool - { - $key = $this->getCacheKey($name); - - return false !== $this->handler->get($key); - } - - /** - * 读取缓存 - * @access public - * @param string $name 缓存变量名 - * @param mixed $default 默认值 - * @return mixed - */ - public function get($name, $default = null) - { - $this->readTimes++; - - $result = $this->handler->get($this->getCacheKey($name)); - - return false !== $result ? $this->unserialize($result) : $default; - } - - /** - * 写入缓存 - * @access public - * @param string $name 缓存变量名 - * @param mixed $value 存储数据 - * @param int|\DateTime $expire 有效时间(秒) - * @return bool - */ - public function set($name, $value, $expire = null): bool - { - $this->writeTimes++; - - if (is_null($expire)) { - $expire = $this->options['expire']; - } - - $key = $this->getCacheKey($name); - $expire = $this->getExpireTime($expire); - $value = $this->serialize($value); - - if ($this->handler->set($key, $value, 0, $expire)) { - return true; - } - - return false; - } - - /** - * 自增缓存(针对数值缓存) - * @access public - * @param string $name 缓存变量名 - * @param int $step 步长 - * @return false|int - */ - public function inc(string $name, int $step = 1) - { - $this->writeTimes++; - - $key = $this->getCacheKey($name); - - if ($this->handler->get($key)) { - return $this->handler->increment($key, $step); - } - - return $this->handler->set($key, $step); - } - - /** - * 自减缓存(针对数值缓存) - * @access public - * @param string $name 缓存变量名 - * @param int $step 步长 - * @return false|int - */ - public function dec(string $name, int $step = 1) - { - $this->writeTimes++; - - $key = $this->getCacheKey($name); - $value = $this->handler->get($key) - $step; - $res = $this->handler->set($key, $value); - - return !$res ? false : $value; - } - - /** - * 删除缓存 - * @access public - * @param string $name 缓存变量名 - * @param bool|false $ttl - * @return bool - */ - public function delete($name, $ttl = false): bool - { - $this->writeTimes++; - - $key = $this->getCacheKey($name); - - return false === $ttl ? - $this->handler->delete($key) : - $this->handler->delete($key, $ttl); - } - - /** - * 清除缓存 - * @access public - * @return bool - */ - public function clear(): bool - { - $this->writeTimes++; - - return $this->handler->flush(); - } - - /** - * 删除缓存标签 - * @access public - * @param array $keys 缓存标识列表 - * @return void - */ - public function clearTag(array $keys): void - { - foreach ($keys as $key) { - $this->handler->delete($key); - } - } - -} diff --git a/vendor/topthink/think-cache/src/cache/driver/Memcached.php b/vendor/topthink/think-cache/src/cache/driver/Memcached.php deleted file mode 100644 index 4334948..0000000 --- a/vendor/topthink/think-cache/src/cache/driver/Memcached.php +++ /dev/null @@ -1,220 +0,0 @@ - -// +---------------------------------------------------------------------- - -namespace think\cache\driver; - -use think\cache\Driver; - -/** - * Memcached缓存类 - */ -class Memcached extends Driver -{ - /** - * 配置参数 - * @var array - */ - protected $options = [ - 'host' => '127.0.0.1', - 'port' => 11211, - 'expire' => 0, - 'timeout' => 0, // 超时时间(单位:毫秒) - 'prefix' => '', - 'username' => '', //账号 - 'password' => '', //密码 - 'option' => [], - 'tag_prefix' => 'tag:', - 'serialize' => [], - ]; - - /** - * 架构函数 - * @access public - * @param array $options 缓存参数 - */ - public function __construct(array $options = []) - { - if (!extension_loaded('memcached')) { - throw new \BadFunctionCallException('not support: memcached'); - } - - if (!empty($options)) { - $this->options = array_merge($this->options, $options); - } - - $this->handler = new \Memcached; - - if (!empty($this->options['option'])) { - $this->handler->setOptions($this->options['option']); - } - - // 设置连接超时时间(单位:毫秒) - if ($this->options['timeout'] > 0) { - $this->handler->setOption(\Memcached::OPT_CONNECT_TIMEOUT, $this->options['timeout']); - } - - // 支持集群 - $hosts = (array) $this->options['host']; - $ports = (array) $this->options['port']; - if (empty($ports[0])) { - $ports[0] = 11211; - } - - // 建立连接 - $servers = []; - foreach ($hosts as $i => $host) { - $servers[] = [$host, $ports[$i] ?? $ports[0], 1]; - } - - $this->handler->addServers($servers); - - if ('' != $this->options['username']) { - $this->handler->setOption(\Memcached::OPT_BINARY_PROTOCOL, true); - $this->handler->setSaslAuthData($this->options['username'], $this->options['password']); - } - } - - /** - * 判断缓存 - * @access public - * @param string $name 缓存变量名 - * @return bool - */ - public function has($name): bool - { - $key = $this->getCacheKey($name); - - return $this->handler->get($key) ? true : false; - } - - /** - * 读取缓存 - * @access public - * @param string $name 缓存变量名 - * @param mixed $default 默认值 - * @return mixed - */ - public function get($name, $default = null) - { - $this->readTimes++; - - $result = $this->handler->get($this->getCacheKey($name)); - - return false !== $result ? $this->unserialize($result) : $default; - } - - /** - * 写入缓存 - * @access public - * @param string $name 缓存变量名 - * @param mixed $value 存储数据 - * @param integer|\DateTime $expire 有效时间(秒) - * @return bool - */ - public function set($name, $value, $expire = null): bool - { - $this->writeTimes++; - - if (is_null($expire)) { - $expire = $this->options['expire']; - } - - $key = $this->getCacheKey($name); - $expire = $this->getExpireTime($expire); - $value = $this->serialize($value); - - if ($this->handler->set($key, $value, $expire)) { - return true; - } - - return false; - } - - /** - * 自增缓存(针对数值缓存) - * @access public - * @param string $name 缓存变量名 - * @param int $step 步长 - * @return false|int - */ - public function inc(string $name, int $step = 1) - { - $this->writeTimes++; - - $key = $this->getCacheKey($name); - - if ($this->handler->get($key)) { - return $this->handler->increment($key, $step); - } - - return $this->handler->set($key, $step); - } - - /** - * 自减缓存(针对数值缓存) - * @access public - * @param string $name 缓存变量名 - * @param int $step 步长 - * @return false|int - */ - public function dec(string $name, int $step = 1) - { - $this->writeTimes++; - - $key = $this->getCacheKey($name); - $value = $this->handler->get($key) - $step; - $res = $this->handler->set($key, $value); - - return !$res ? false : $value; - } - - /** - * 删除缓存 - * @access public - * @param string $name 缓存变量名 - * @param bool|false $ttl - * @return bool - */ - public function delete($name, $ttl = false): bool - { - $this->writeTimes++; - - $key = $this->getCacheKey($name); - - return false === $ttl ? - $this->handler->delete($key) : - $this->handler->delete($key, $ttl); - } - - /** - * 清除缓存 - * @access public - * @return bool - */ - public function clear(): bool - { - $this->writeTimes++; - - return $this->handler->flush(); - } - - /** - * 删除缓存标签 - * @access public - * @param array $keys 缓存标识列表 - * @return void - */ - public function clearTag(array $keys): void - { - $this->handler->deleteMulti($keys); - } - -} diff --git a/vendor/topthink/think-cache/src/cache/driver/Redis.php b/vendor/topthink/think-cache/src/cache/driver/Redis.php deleted file mode 100644 index b161ef1..0000000 --- a/vendor/topthink/think-cache/src/cache/driver/Redis.php +++ /dev/null @@ -1,244 +0,0 @@ - -// +---------------------------------------------------------------------- - -namespace think\cache\driver; - -use think\cache\Driver; - -/** - * Redis缓存驱动,适合单机部署、有前端代理实现高可用的场景,性能最好 - * 有需要在业务层实现读写分离、或者使用RedisCluster的需求,请使用Redisd驱动 - * - * 要求安装phpredis扩展:https://github.com/nicolasff/phpredis - * @author 尘缘 <130775@qq.com> - */ -class Redis extends Driver -{ - /** - * 配置参数 - * @var array - */ - protected $options = [ - 'host' => '127.0.0.1', - 'port' => 6379, - 'password' => '', - 'select' => 0, - 'timeout' => 0, - 'expire' => 0, - 'persistent' => false, - 'prefix' => '', - 'tag_prefix' => 'tag:', - 'serialize' => [], - ]; - - /** - * 架构函数 - * @access public - * @param array $options 缓存参数 - */ - public function __construct(array $options = []) - { - if (!empty($options)) { - $this->options = array_merge($this->options, $options); - } - - if (extension_loaded('redis')) { - $this->handler = new \Redis; - - if ($this->options['persistent']) { - $this->handler->pconnect($this->options['host'], (int) $this->options['port'], $this->options['timeout'], 'persistent_id_' . $this->options['select']); - } else { - $this->handler->connect($this->options['host'], (int) $this->options['port'], $this->options['timeout']); - } - - if ('' != $this->options['password']) { - $this->handler->auth($this->options['password']); - } - } elseif (class_exists('\Predis\Client')) { - $params = []; - foreach ($this->options as $key => $val) { - if (in_array($key, ['aggregate', 'cluster', 'connections', 'exceptions', 'prefix', 'profile', 'replication', 'parameters'])) { - $params[$key] = $val; - unset($this->options[$key]); - } - } - - if ('' == $this->options['password']) { - unset($this->options['password']); - } - - $this->handler = new \Predis\Client($this->options, $params); - - $this->options['prefix'] = ''; - } else { - throw new \BadFunctionCallException('not support: redis'); - } - - if (0 != $this->options['select']) { - $this->handler->select($this->options['select']); - } - } - - /** - * 判断缓存 - * @access public - * @param string $name 缓存变量名 - * @return bool - */ - public function has($name): bool - { - return $this->handler->exists($this->getCacheKey($name)); - } - - /** - * 读取缓存 - * @access public - * @param string $name 缓存变量名 - * @param mixed $default 默认值 - * @return mixed - */ - public function get($name, $default = null) - { - $this->readTimes++; - - $value = $this->handler->get($this->getCacheKey($name)); - - if (is_null($value) || false === $value) { - return $default; - } - - return $this->unserialize($value); - } - - /** - * 写入缓存 - * @access public - * @param string $name 缓存变量名 - * @param mixed $value 存储数据 - * @param integer|\DateTime $expire 有效时间(秒) - * @return bool - */ - public function set($name, $value, $expire = null): bool - { - $this->writeTimes++; - - if (is_null($expire)) { - $expire = $this->options['expire']; - } - - $key = $this->getCacheKey($name); - $expire = $this->getExpireTime($expire); - $value = $this->serialize($value); - - if ($expire) { - $this->handler->setex($key, $expire, $value); - } else { - $this->handler->set($key, $value); - } - - return true; - } - - /** - * 自增缓存(针对数值缓存) - * @access public - * @param string $name 缓存变量名 - * @param int $step 步长 - * @return false|int - */ - public function inc(string $name, int $step = 1) - { - $this->writeTimes++; - - $key = $this->getCacheKey($name); - - return $this->handler->incrby($key, $step); - } - - /** - * 自减缓存(针对数值缓存) - * @access public - * @param string $name 缓存变量名 - * @param int $step 步长 - * @return false|int - */ - public function dec(string $name, int $step = 1) - { - $this->writeTimes++; - - $key = $this->getCacheKey($name); - - return $this->handler->decrby($key, $step); - } - - /** - * 删除缓存 - * @access public - * @param string $name 缓存变量名 - * @return bool - */ - public function delete($name): bool - { - $this->writeTimes++; - - $this->handler->del($this->getCacheKey($name)); - return true; - } - - /** - * 清除缓存 - * @access public - * @return bool - */ - public function clear(): bool - { - $this->writeTimes++; - - $this->handler->flushDB(); - return true; - } - - /** - * 删除缓存标签 - * @access public - * @param array $keys 缓存标识列表 - * @return void - */ - public function clearTag(array $keys): void - { - // 指定标签清除 - $this->handler->del($keys); - } - - /** - * 追加(数组)缓存数据 - * @access public - * @param string $name 缓存标识 - * @param mixed $value 数据 - * @return void - */ - public function push(string $name, $value): void - { - $this->handler->sAdd($name, $value); - } - - /** - * 获取标签包含的缓存标识 - * @access public - * @param string $tag 缓存标签 - * @return array - */ - public function getTagItems(string $tag): array - { - return $this->handler->sMembers($tag); - } - -} diff --git a/vendor/topthink/think-cache/src/cache/driver/Wincache.php b/vendor/topthink/think-cache/src/cache/driver/Wincache.php deleted file mode 100644 index 78457ed..0000000 --- a/vendor/topthink/think-cache/src/cache/driver/Wincache.php +++ /dev/null @@ -1,174 +0,0 @@ - -// +---------------------------------------------------------------------- - -namespace think\cache\driver; - -use think\cache\Driver; - -/** - * Wincache缓存驱动 - */ -class Wincache extends Driver -{ - /** - * 配置参数 - * @var array - */ - protected $options = [ - 'prefix' => '', - 'expire' => 0, - 'tag_prefix' => 'tag:', - 'serialize' => [], - ]; - - /** - * 架构函数 - * @access public - * @param array $options 缓存参数 - * @throws \BadFunctionCallException - */ - public function __construct(array $options = []) - { - if (!function_exists('wincache_ucache_info')) { - throw new \BadFunctionCallException('not support: WinCache'); - } - - if (!empty($options)) { - $this->options = array_merge($this->options, $options); - } - } - - /** - * 判断缓存 - * @access public - * @param string $name 缓存变量名 - * @return bool - */ - public function has($name): bool - { - $this->readTimes++; - - $key = $this->getCacheKey($name); - - return wincache_ucache_exists($key); - } - - /** - * 读取缓存 - * @access public - * @param string $name 缓存变量名 - * @param mixed $default 默认值 - * @return mixed - */ - public function get($name, $default = null) - { - $this->readTimes++; - - $key = $this->getCacheKey($name); - - return wincache_ucache_exists($key) ? $this->unserialize(wincache_ucache_get($key)) : $default; - } - - /** - * 写入缓存 - * @access public - * @param string $name 缓存变量名 - * @param mixed $value 存储数据 - * @param integer|\DateTime $expire 有效时间(秒) - * @return bool - */ - public function set($name, $value, $expire = null): bool - { - $this->writeTimes++; - - if (is_null($expire)) { - $expire = $this->options['expire']; - } - - $key = $this->getCacheKey($name); - $expire = $this->getExpireTime($expire); - $value = $this->serialize($value); - - if (wincache_ucache_set($key, $value, $expire)) { - return true; - } - - return false; - } - - /** - * 自增缓存(针对数值缓存) - * @access public - * @param string $name 缓存变量名 - * @param int $step 步长 - * @return false|int - */ - public function inc(string $name, int $step = 1) - { - $this->writeTimes++; - - $key = $this->getCacheKey($name); - - return wincache_ucache_inc($key, $step); - } - - /** - * 自减缓存(针对数值缓存) - * @access public - * @param string $name 缓存变量名 - * @param int $step 步长 - * @return false|int - */ - public function dec(string $name, int $step = 1) - { - $this->writeTimes++; - - $key = $this->getCacheKey($name); - - return wincache_ucache_dec($key, $step); - } - - /** - * 删除缓存 - * @access public - * @param string $name 缓存变量名 - * @return bool - */ - public function delete($name): bool - { - $this->writeTimes++; - - return wincache_ucache_delete($this->getCacheKey($name)); - } - - /** - * 清除缓存 - * @access public - * @return bool - */ - public function clear(): bool - { - $this->writeTimes++; - return wincache_ucache_clear(); - } - - /** - * 删除缓存标签 - * @access public - * @param array $keys 缓存标识列表 - * @return void - */ - public function clearTag(array $keys): void - { - wincache_ucache_delete($keys); - } - -} diff --git a/vendor/topthink/think-cache/src/exception/InvalidArgumentException.php b/vendor/topthink/think-cache/src/exception/InvalidArgumentException.php deleted file mode 100644 index d317278..0000000 --- a/vendor/topthink/think-cache/src/exception/InvalidArgumentException.php +++ /dev/null @@ -1,22 +0,0 @@ - -// +---------------------------------------------------------------------- -declare (strict_types = 1); -namespace think\exception; - -use Psr\Cache\InvalidArgumentException as Psr6CacheInvalidArgumentInterface; -use Psr\SimpleCache\InvalidArgumentException as SimpleCacheInvalidArgumentInterface; - -/** - * 非法数据异常 - */ -class InvalidArgumentException extends \InvalidArgumentException implements Psr6CacheInvalidArgumentInterface, SimpleCacheInvalidArgumentInterface -{ -} diff --git a/vendor/topthink/think-cache/src/facade/Cache.php b/vendor/topthink/think-cache/src/facade/Cache.php deleted file mode 100644 index b701534..0000000 --- a/vendor/topthink/think-cache/src/facade/Cache.php +++ /dev/null @@ -1,31 +0,0 @@ - -// +---------------------------------------------------------------------- -declare (strict_types = 1); -namespace think\facade; - -use think\Facade; - -/** - * @see \think\CacheManager - * @mixin \think\CacheManager - */ -class Cache extends Facade -{ - /** - * 获取当前Facade对应类名(或者已经绑定的容器对象标识) - * @access protected - * @return string - */ - protected static function getFacadeClass() - { - return 'think\CacheManager'; - } -} diff --git a/vendor/webman/think-cache/LICENSE b/vendor/webman/think-cache/LICENSE deleted file mode 100644 index e0b0695..0000000 --- a/vendor/webman/think-cache/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2022 webman - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/vendor/webman/think-cache/README.md b/vendor/webman/think-cache/README.md deleted file mode 100644 index 4a11e5b..0000000 --- a/vendor/webman/think-cache/README.md +++ /dev/null @@ -1,2 +0,0 @@ -# think-cache -webman think-cache plugin diff --git a/vendor/webman/think-cache/composer.json b/vendor/webman/think-cache/composer.json deleted file mode 100644 index 98c6aad..0000000 --- a/vendor/webman/think-cache/composer.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "name": "webman/think-cache", - "type": "library", - "license": "MIT", - "require": { - "topthink/think-cache": "^2.0.6" - }, - "autoload": { - "psr-4": { - "Webman\\ThinkCache\\": "src" - } - } -} diff --git a/vendor/webman/think-cache/src/Install.php b/vendor/webman/think-cache/src/Install.php deleted file mode 100644 index 84d18c2..0000000 --- a/vendor/webman/think-cache/src/Install.php +++ /dev/null @@ -1,93 +0,0 @@ - 'config/thinkcache.php' - ]; - - /** - * Install - * @return void - */ - public static function install() - { - $config_file = config_path() . '/bootstrap.php'; - $config = include $config_file; - if(!in_array(ThinkCache::class, $config ?? [])) { - $config_file_content = file_get_contents($config_file); - $config_file_content = preg_replace('/\];/', " Webman\ThinkCache\ThinkCache::class,\n];", $config_file_content); - file_put_contents($config_file, $config_file_content); - } - /*$thinkcache_file = config_path() . '/thinkcache.php'; - if (!is_file($thinkcache_file)) { - copy(__DIR__ . '/config/thinkcache.php', $thinkcache_file); - }*/ - static::installByRelation(); - } - - /** - * Uninstall - * @return void - */ - public static function uninstall() - { - $config_file = config_path() . '/bootstrap.php'; - $config = include $config_file; - if(in_array(ThinkCache::class, $config ?? [])) { - $config_file = config_path() . '/bootstrap.php'; - $config_file_content = file_get_contents($config_file); - $config_file_content = preg_replace('/ {0,4}Webman\\\\ThinkCache\\\\ThinkCache::class,?\r?\n?/', '', $config_file_content); - file_put_contents($config_file, $config_file_content); - } - self::uninstallByRelation(); - } - - /** - * installByRelation - * @return void - */ - public static function installByRelation() - { - foreach (static::$pathRelation as $source => $dest) { - if ($pos = strrpos($dest, '/')) { - $parent_dir = base_path().'/'.substr($dest, 0, $pos); - if (!is_dir($parent_dir)) { - mkdir($parent_dir, 0777, true); - } - } - //symlink(__DIR__ . "/$source", base_path()."/$dest"); - copy_dir(__DIR__ . "/$source", base_path()."/$dest"); - echo "Create $dest -"; - } - } - - /** - * uninstallByRelation - * @return void - */ - public static function uninstallByRelation() - { - foreach (static::$pathRelation as $source => $dest) { - $path = base_path()."/$dest"; - if (!is_dir($path) && !is_file($path)) { - continue; - } - echo "Remove $dest -"; - if (is_file($path) || is_link($path)) { - unlink($path); - continue; - } - remove_dir($path); - } - } - -} \ No newline at end of file diff --git a/vendor/webman/think-cache/src/ThinkCache.php b/vendor/webman/think-cache/src/ThinkCache.php deleted file mode 100644 index f0c5cb2..0000000 --- a/vendor/webman/think-cache/src/ThinkCache.php +++ /dev/null @@ -1,31 +0,0 @@ -make(DbManager::class); - $manager_instance->setCache(Cache::store()); - } - } -} diff --git a/vendor/webman/think-cache/src/config/thinkcache.php b/vendor/webman/think-cache/src/config/thinkcache.php deleted file mode 100644 index 487f18f..0000000 --- a/vendor/webman/think-cache/src/config/thinkcache.php +++ /dev/null @@ -1,22 +0,0 @@ - 'file', - 'stores' => [ - 'file' => [ - 'type' => 'File', - // 缓存保存目录 - 'path' => runtime_path() . '/cache/', - // 缓存前缀 - 'prefix' => '', - // 缓存有效期 0表示永久缓存 - 'expire' => 0, - ], - 'redis' => [ - 'type' => 'redis', - 'host' => '127.0.0.1', - 'port' => 6379, - 'prefix' => '', - 'expire' => 0, - ], - ], -]; \ No newline at end of file